3 つのフィールド (item_id、source、および price) を持つテーブルがあります。(item_id、source、および price) が一緒になって主キーを構成します。
item_id source price
------- ------- -----
1 paris 13
1 london 12
1 newyork 15
2 paris 22
2 london 15
2 newyork 14
item_id ごとに、それを入手するのに最も安い場所と、その場所で支払う価格を知りたいです。上記の例について、次の出力を確認したいと思います。
item_id source price
------- ------- ---------
1 london 12
2 newyork 14
テーブル名を2回言及せずにこれを行う簡単な方法はありますか? MySQL を使用しているため、WITH 句を使用できません。
別のユーザーの質問 ( Group related records, but pick specific fields from only the first record ) で結合された 2 つのクエリ ソリューションを見てきましたが、テーブルについて 2 回言及することは本当に避けたいと思います。問題は、この質問の単純なテーブルが、実際の問題では、使用ごとに作成するのに約 5 秒かかるインライン ビューを実際に表していることです。そのため、代替案を見つけたいと考えています。