私は、いくつかの代替品 (一部のプロバイダーによって提供される) の価格を調べる SQL クエリを持っています。(それらは 1 つ、2 つ、またはそれ以上になる可能性があります)
私はこのクエリを持っていて、それをコードで解析していますが、SQL だけでやりたいことを行う方法は他にありますか?
select * from tprovider_treplacement where replacement_id = ? order by price asc
ありがとうございます☺</p>
私は、いくつかの代替品 (一部のプロバイダーによって提供される) の価格を調べる SQL クエリを持っています。(それらは 1 つ、2 つ、またはそれ以上になる可能性があります)
私はこのクエリを持っていて、それをコードで解析していますが、SQL だけでやりたいことを行う方法は他にありますか?
select * from tprovider_treplacement where replacement_id = ? order by price asc
ありがとうございます☺</p>
このようなものが欲しいですか?
select *
from tprovider_treplacement
where replacement_id = ? and
price = (select min(price)
from tprovider_treplacement
replacement_id = ?
)
これは標準 SQL です。多くのデータベースは、ウィンドウ関数を使用したこの方法もサポートしています。
select *
from (select pr.*,
min(price) over (partition by replacement_id) as minprice
from tprovider_treplacement pr
where replacement_id = ?
) t
where price = minprice