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

изберете количество сума от 2 таблици

Изглежда, че не използвате order таблица, а след това проверка дали съществува, така че можете да използвате EXISTS()

SELECT p.product_id,sum(p.qty) as qty
FROM (SELECT product_id,qty,id_order FROM order_detail_1
      WHERE product_id IS NOT NULL
      UNION ALL 
      SELECT product_id,qty,id_order FROM order_detail_2
      WHERE product_id IS NOT NULL) p
WHERE EXISTS(SELECT 1 FROM order o 
             WHERE o.id = p.id_order)
GROUP BY p.product_id


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Rails 3.2 + MySQL:Грешка:Полето 'created_at' няма стойност по подразбиране:INSERT INTO

  2. Вмъквайте редове само когато съществува идентификатор от друга таблица

  3. Премахване на елемент от масива по стойност в mysql json

  4. Rails ActiveRecord обработва колона с идентификатор, която не е първичен ключ

  5. извличане на идентификаторите, присвоени на списък с потребителски идентификатори