我使用MySQL和我想要做一个排序的三元语句在我的SQL这样的:如何在MySQL select语句中编写条件?
SELECT USER_ID, ((USER_ID = 1) ? 1 : 0) AS FIRST_USER
FROM USER
结果将类似于:
USER_ID | FIRST_USER
1 | 1
2 | 0
3 | 0
etc.
怎样才能做到这一点?
我使用MySQL和我想要做一个排序的三元语句在我的SQL这样的:如何在MySQL select语句中编写条件?
SELECT USER_ID, ((USER_ID = 1) ? 1 : 0) AS FIRST_USER
FROM USER
结果将类似于:
USER_ID | FIRST_USER
1 | 1
2 | 0
3 | 0
etc.
怎样才能做到这一点?
SELECT USER_ID, (CASE USER_ID WHEN 1 THEN 1 ELSE 0 END) as FIRST_USER FROM USER
SELECT USER_ID, IF(USER_ID = 1, 1, 0) AS FIRST_USER FROM USER
的IF()声明的工作方式类似于三元? :运营商。
我试图有条件地选择column_a或column_b(使用一个作为备用,如果另一个是空),这对我来说。谢谢! – 2015-06-09 18:55:07
谢谢,效果很好! – Langdon 2009-10-30 04:10:49
这是最好的答案 - CASE是ANSI标准,查询将在SQL Server,Oracle,MySQL,Postgres上无需更改... – 2009-10-30 04:18:10