Tương tự gần nhất là SWITCH()
chức năng v.d.
Oracle:
SELECT supplier_name,
decode(supplier_id, 10000, 'IBM',
10001, 'Microsoft',
10002, 'Hewlett Packard',
'Gateway') result
FROM suppliers;
Truy cập Công cụ cơ sở dữ liệu
SELECT supplier_name,
SWITCH(supplier_id = 10000, 'IBM',
supplier_id = 10001, 'Microsoft',
supplier_id = 10002, 'Hewlett Packard',
TRUE, 'Gateway') AS result
FROM suppliers;
Lưu ý rằng với SWITCH()
bạn phải cung cấp đầy đủ vị từ mỗi lần, vì vậy bạn không bị hạn chế chỉ sử dụng nhà cung cấp_id. Đối với giá trị mặc định, hãy sử dụng một vị từ hiển nhiên đối với người đọc là ĐÚNG, ví dụ:1 = 1
hoặc thực sự chỉ đơn giản là TRUE
:)
Điều gì đó có thể không rõ ràng là logic trong SWITCH()
hàm không ngắn mạch, có nghĩa là mọi biểu thức trong hàm phải có thể được đánh giá mà không có lỗi. Nếu bạn yêu cầu logic để đoản mạch thì bạn sẽ cần sử dụng IIF()
lồng nhau chức năng.