2017-11-23 18 views
0

私はこの問題に遭遇しましたが、解決策が見つかりませんでした。私はこのクエリを試みたが、成功しませんMySQL:同じテーブルの2つの選択クエリを結合するには

---------------------------- 
| theday | USD | EUR | 
---------------------------- 
|16/12/2016| 300 | 100 | 
|17/12/2016| 200 | 400 | 
---------------------------- 

SELECT a.`amount` as eur, b.`amount` as dol, a.`theday` 
FROM `payments` AS a 
JOIN (SELECT `amount` , `theday`, `currency` 
FROM `payments`) AS b 
WHERE a.`currency` = 'EUR' 
AND b.`currency` = 'USD' 

最後に私が持っていた私は、この出力をしたい

---------------------------------------------- 
| id  | theday | amount | currency | 
---------------------------------------------- 
| 1  |16/12/2016| 300  | USD  | 
| 2  |17/12/2016| 200  | USD  | 
| 3  |16/12/2016| 100  | EUR  | 
| 4  |17/12/2016| 400  | EUR  | 
---------------------------------------------- 

このテーブルpaymentsを考えてみましょうテーブル構造をこれに変更する(id、theday、usd、eur) ちょうどクエリを使用するソリューションがあるかどうかを知りたいだけです。

ありがとうございます。私はあなたが自分でそれを行うことができると思い

+0

このクエリがピボットと呼ばれています。それはたくさんの質問を受けていますstackoverflow –

+0

ありがとう@ RaymondNijland、それは私が 'ピボット'について聞いたのは初めてです! –

答えて

0

参加:

SELECT t1.theday 
    ,t1.amount 
    ,t2.amount 
FROM payments t1 
INNER JOIN payments t2 ON t1.theday = t2.theday 
関連する問題