こんにちは、MYSQL にテーブルがあります
prices
cost name
3.10 salt
4.00 soda
1.00 bread
1.50 candy
3.50 bread
4.00 candy
すべてのアイテムが3.00を超えているアイテムのみを表示できるようにしたい
のようなもの
cost name
3.10 salt
4.00 soda
私の結果だろう
MYSQLでこれを行うにはどうすればよいですか?
こんにちは、MYSQL にテーブルがあります
prices
cost name
3.10 salt
4.00 soda
1.00 bread
1.50 candy
3.50 bread
4.00 candy
すべてのアイテムが3.00を超えているアイテムのみを表示できるようにしたい
のようなもの
cost name
3.10 salt
4.00 soda
私の結果だろう
MYSQLでこれを行うにはどうすればよいですか?
SELECT p1.*
FROM prices p1
JOIN (SELECT name, MIN(cost) mincost
FROM prices
GROUP BY name
HAVING mincost > 3) p2
ON p1.name = p2.name
サブクエリまたは結合内で分を使用できます。
select * from prices
where name in (select name from prices group by name having min(cost) > 3);
select cost,name from prices where cost>3.00 order by name;
出力は
cost name
3.50 bread
4.00 candy
3.10 salt
4.00 soda