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関数がないため、内部クエリにはgroupby句は必要ありません。最も外側のクエリに移動しました



    1. phpはmysqlの順序よりも優れていますか?

    2. DUPLICATE KEY +AUTOINCREMENTでmysqlを発行します

    3. postgresqlダンプをHerokuにインポートする

    4. Laravel5.2-Eloquentテーブルのカスタム主キーとして文字列を使用すると0になります