Tôi muốn truy xuất dữ liệu với các điều kiện trong mệnh đề WHERE
.
Dưới đây là bảng một cái gì đó của tôi trông giống như:Điều khoản WHERE với nhiều điều kiện lồng nhau
Name Location Age
----------------------
AAA Bhuj 24
BBB Mumbai 22
CCC Bhuj 18
DDD Bhuj 27
EEE Mumbai 26
tình trạng của tôi trong WHERE
khoản là:
if location = 'Bhuj' then Age>20 else if location = 'Mumbai' then Age>25
tôi đang cố gắng mã này để đạt được điều này:
SELECT * FROM testing
WHERE
CASE Location WHEN 'Bhuj' THEN Age>20
WHEN 'Mumbai' THEN Age>25
END;
Mã này công trình tốt cho MySQL (see this SQLFiddle) nhưng không hoạt động cho SQL Server (see this SQLFiddle) và đưa ra lỗi sau hoặc:
Incorrect syntax near '>'.: SELECT * FROM testing WHERE case Location When 'Bhuj' then Age>20 When 'Mumbai' then Age>25 end
Bất kỳ đề xuất nào?
Không thấy bất kỳ lý do gì để giải thích câu hỏi. Upvoted :) – hgulyan
trường hợp không cần thiết ở đây –
@NitinGoyal Truy vấn thực tế của tôi là khác nhau và phức tạp. Tôi phải sử dụng câu lệnh 'CASE' ở đâu. Tôi chỉ đơn giản là nó ở đây. – hims056