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

Mysql Присъединете се И СУМ

Друг начин да го направите (не е тестван, така че ме уведомете, ако се взриви):

SELECT emp.id, IF(emp.statue=1, c.sumCome, 0) AS sumCome, l.sumLeave
FROM emp
     LEFT JOIN (SELECT uid, SUM(money) AS sumCome
                FROM come
                GROUP BY uid
               ) c ON emp.id = c.uid
     LEFT JOIN (SELECT uid, SUM(money) AS sumLeave
                FROM leave
                GROUP BY uid
               ) l ON emp.id = l.uid

Не знам кое ще е по-бързо в сравнение с това на Кевин. Може да искате да explain и двамата и вижте.



  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 и html форма на една и съща страница

  2. SQL заявка, която връща таблица, където всеки ред представлява дата в даден диапазон

  3. SQL времева разлика в рамките на една таблица

  4. Надстройте MySQL до MariaDB 10 (Част 1 – Инсталирайте MariaDB 5.5)

  5. Отдалечени връзки Mysql Ubuntu