sql >> Databasteknik >  >> RDS >> Mysql

if condition i mysql select-satsen

För att veta vilken som är vald kan du göra något så här:

SELECT IF(start_city_name='somecity', 'Departure time', 'Arrival time'),
       IF(start_city_name='somecity', departure_time, arrival_time)
FROM time_schedule;

Du kan egentligen inte ha det som kolumnnamn, tänk om det finns en rad där villkoret är sant och en där villkoret är falskt, vad ska kolumnnamnet vara?

Men om du är nöjd med att dela upp dem i två kolumner:

SELECT IF(start_city_name='somecity', NULL, arrival_time) AS 'Arrival time',
       IF(start_city_name='somecity', departure_time, NULL) AS 'Departure time'
FROM time_schedule;

Detta är väldigt likt att bara säga:

SELECT arrival_time, departure_time
FROM time_schedule;

Förutom att arrival_time kommer att vara NULL när villkoret är sant, och departure_time kommer att vara NULL när villkoret är falskt.



  1. 11gR2 Compression Advisor =Evil

  2. Varning:mysql_query() förväntar sig att parameter 2 är resurs, boolean ges i C:\wamp\www\pyrll\emlhome.php på rad 15

  3. Så här fixar du Meddelande:SQLSTATE[08004] [1040] För många anslutningar

  4. Växla resultat från databasen jQuery