次のデータセットがあります
ID P C1 C2 XR
1 1 GBP USD 1.6
2 2 GBP USD 1.7
3 1 GBP EUR 0.84
4 2 GBP EUR 0.83
5 1 GBP CHF 1.8
6 2 GBP CHF 1.8
結果は次のようになるはずなので、各ペアの最小XRを取得しようとしています
ID P C1 C2 XR
1 1 GBP USD 1.6
4 2 GBP EUR 0.83
5 1 GBP CHF 1.8
しかし、私SELECT MIN(XR) GROUP BY C1,C2
が正しいIDを取得しないか、「ONLY_FULL_GROUP_BY」が有効になっている場合、IDがGROUP BYにないという警告が表示されます
私が持っている最も近いものはこれです:
SELECT t1.id, t1.C1, t1.C2, MIN(t2.XR) FROM xrates t1
LEFT JOIN xrates AS t2 ON t1.id = t2.id
GROUP BY t1.id, t1.C1, t1.C2
HAVING t1.C1 = 'GBP' AND t1.C2 IN ('USD','EUR')