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

SQL заявка с обединение и присъединяване

Използвайте следната заявка

select `company_name, `store_name`, MONTH, sum(`sales`) as sales, sum(purchase) as purchase   from (
select `company_group`.`company_name, `store`.`store_name`, MONTHNAME(date) AS MONTH,`sales`.`sales` , 0 as purchase
from company_group, store,sales
where `company_group`.`company.id`=`sales`.`company.id`
and `store`.`store.id`=`sales`.`store.id`

UNION

select `company_group`.`company_name, `store`.`store_name`, MONTHNAME(date) AS MONTH,`wh_sales`.`sales`, 0 as purchase
from company_group, store,wh_sales
where `company_group`.`company.id`=`wh_sales`.`company.id`
and `store`.`store.id`=`wh_sales`.`store.id`

UNION

select `company_group`.`company_name, `store`.`store_name`, MONTHNAME(date) AS MONTH, 0 as sales, purchase
from company_group, store,purchase
where `company_group`.`company.id`=`purchase`.`company.id`
and `store`.`store.id`=`purchase`.`store.id`) a
group by company_name,store_name, 'MONTH'

Клаузата group by не е необходима за вътрешните заявки, тъй като няма групова функция. Преместих го в най-външната заявка



  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 TextArea Where клауза с проверки на условия

  2. Тестване на MySQL заявка

  3. лош аргумент №1 за 'ipairs' (очаква се таблица, получи булева)

  4. Правене на уникална стойност на криптирано поле

  5. MySQL:Изберете данни от таблица, където датата попада в текущата седмица и текущия месец