Mysql
 sql >> база данни >  >> RDS >> Mysql

'IF' в израза 'SELECT' - изберете изходна стойност въз основа на стойностите на колоните

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

Вижте http://dev.mysql.com/ doc/refman/5.0/en/control-flow-functions.html .

Освен това можете да се справите, когато условието е нула. В случай на нулева сума:

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

Частта IFNULL(amount,0) означава когато сумата не е нула, връщане на сума, иначе връщане на 0 .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. КЪДЕ срещу ИМАНЕ

  2. Как да проверите размера на базата данни и таблиците на MySQL

  3. MAX() срещу GREATEST() в MySQL:Каква е разликата?

  4. Каква е максималната дължина на данните, които мога да поставя в BLOB колона в MySQL?

  5. Какво означава грешка в mysql 1025 (HY000):Грешка при преименуване на './foo' (errorno:150)?