sql >> Database teknologi >  >> RDS >> Mysql

'IF' i 'SELECT'-sætning - vælg outputværdi baseret på kolonneværdier

SELECT id, 
       IF(type = 'P', amount, amount * -1) as amount
FROM report

Se http://dev.mysql.com/ doc/refman/5.0/da/control-flow-functions.html .

Derudover kan du håndtere, når betingelsen er nul. I tilfælde af et nulbeløb:

SELECT id, 
       IF(type = 'P', IFNULL(amount,0), IFNULL(amount,0) * -1) as amount
FROM report

Delen IFNULL(amount,0) betyder når beløb ikke er nul returbeløb ellers returner 0 .



  1. Find indeks over sidste forekomst af en understreng ved hjælp af T-SQL

  2. Konvertering af DateTime til ÅÅÅÅ-MM-DD-format i SQL Server

  3. MySQL-forespørgsel, der finder værdier i en kommasepareret streng

  4. Erstat unicode-tegn i PostgreSQL