sql >> Databasteknik >  >> RDS >> Mysql

OM... ANNAT i WHERE-satsen MySQL

Syntaxen för IF är :

 IF(test_expr, then_expr, else_expr)

så du kan göra något som IF(test1, result1, IF(test2, result2, else_result)) men det skulle inte vara särskilt läsbart, så det finns CASE uttryck för det ändamålet.

CASE WHEN  test1 THEN result1
WHEN test2 THEN result2
ELSE else_result END

Om du vill villkora en markerad kolumn kan du använda IF i de valda fälten direkt:

SELECT IF(match, nl_column en_column) AS lang 
FROM table

Observera att ett uttryck i en where-sats är antingen TRUE eller FALSE , så skriver

IF(expr, TRUE, FALSE)

är samma som

expr


  1. Hur SQLite Random() fungerar

  2. mysql SKAPA ANVÄNDARE

  3. Kan samma kolumn ha primärnyckel &främmande nyckel begränsning till en annan kolumn

  4. Få genomsnittlig tid mellan två kolumner och flera rader MYSQL