2017-01-07 4 views
-3

私は2つの異なるテーブルから利益を計算する必要があります経費と収入。 2つのテーブルの間にはこのような関係はありません。私はmysqlクエリに続いて使用していますが、今は動作しています。それは作品PHPのMySQLクエリが機能していません

SELECT MONTHNAME(DATE) FROM (
     SELECT DATE FROM expense_tbl 
     UNION ALL 
     SELECT `date` FROM income_tbl 
     ) 
    AS u GROUP BY MONTH(DATE); 


Table: Income 

date   amount 

12/12/2016  25,000 
01/01/2017  20,000 
05/01/2017  2000 


Table Expense 

date   amount 

24/12/2016  20,000 
30/12/2017  1000 
10/01/2017  12000 



Expected Output 

Period  Income  Expense  Profit 

December 25,000  21,000  4000 
January  22,000  12,000  10000 

答えて

1
SELECT MONTH(DATE), 
      sum(case when u.srce = 'i' then amount else 0 end) as Income, 
      sum(case when u.srce = 'e' then amount else 0 end) as Expense, 
      sum(case when u.srce = 'i' then amount else 0 end) - 
      sum(case when u.srce = 'e' then amount else 0 end) as Profit 
     FROM 
     (
     SELECT 'e' as srce,DATE, amount FROM expense 
     UNION 
     SELECT 'i',`date`, amount FROM income 
    ) AS u 
     GROUP BY MONTH(DATE); 
+0

感謝 –

1
select monthname(income.date) as monthname,income.amount, 
expense.amount,sum(income.amount)-sum(expense.amount) as profit from 
income join expense on month(income.date) = month(expense.date) 
group by month(expense.date); 
関連する問題