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

Правете математика в MySQL от SELECT

Не можете да използвате псевдоними, които са дефинирани в клаузата SELECT, за да изчислите други колони, които също са в същата клауза SELECT. Имате поне три опции:

  1. Повтаряйте подзаявката всеки път, когато трябва да я използвате. Това има недостатъка, че ще трябва да повтаряте много код. Тъй като вашите подзаявки са дълги и сложни, това е нежелана опция.

  2. Използвайте подзаявка и външна заявка.

    SELECT
        *,
        (subtotal - payment) AS balance
    FROM
    (
         SELECT 
             ...,
             (...) AS subtotal,
             (...) AS payment
         FROM ... 
    ) T1
    
  3. Използвайте JOIN вместо подселекции. Това е малко по-сложно за вашата ситуация, но ще бъде по-добре за производителността, ако някога се наложи да извлечете повече от един ред.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP MYSQL PDO СУМА от колони

  2. MySQL репликация:Грешни транзакции в GTID базирана репликация

  3. Вмъкнете данни в отдалечена база данни mysql чрез метод POST от iOS устройство

  4. Използване на метода за създаване на заявки Laravel whereIn() с подзаявка

  5. MySQL ::Изпълнете SQL оператор в променлива