63 votes

Comment écrivez-vous un conditionnel dans une base de données MySQL instruction select?

Je suis de l'utilisation de MySQL, et je veux faire une sorte de ternaire relevé dans mon SQL comme:

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

Les résultats seraient similaires à:

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

Comment accomplir cela?

84voto

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

57voto

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

Le SI() instruction fonctionne de la même façon pour le ternaire ? : opérateur.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X