How do you write a conditional in a MySQL select statement?

SqlMysql

Sql Problem Overview


I'm using MySQL, and I want to do a sort of ternary statement in my SQL like:

SELECT USER_ID, ((USER_ID = 1) ? 1 : 0) AS FIRST_USER
  FROM USER

The results would be similar to:

USER_ID | FIRST_USER
1       | 1
2       | 0
3       | 0
etc.

How does one accomplish this?

Sql Solutions


Solution 1 - Sql

SELECT USER_ID, (CASE USER_ID WHEN 1 THEN 1 ELSE 0 END) as FIRST_USER FROM USER

Solution 2 - Sql

SELECT USER_ID, IF(USER_ID = 1, 1, 0) AS FIRST_USER FROM USER

The IF() statement works similarly to the ternary ? : operator.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionLangdonView Question on Stackoverflow
Solution 1 - Sqlx2.View Answer on Stackoverflow
Solution 2 - SqlJasonView Answer on Stackoverflow