【SQL】ある条件下での最大値を取得したい
MariaDBを使用しデータベースを作成しており、
以下の様なテーブルから「value<=10という条件のもとvalueが最大であるcontentsとvalue」を1件のみ取得したいと試みているのですが、上手くいかず困っております。このような条件でデータを取得できるSQL文をご教示ください。
該当のソースコード
SQL
1 2CREATE TABLE example 3(contents VARCHAR(20) PRIMARY KEY 4, value int ); 5 6INSERT INTO example 7VALUE ('test1', 1); 8INSERT INTO example 9VALUE ('test2', 5); 10INSERT INTO example 11VALUE ('test3', 10); 12INSERT INTO example 13VALUE ('test4', 15); 14
試したこと
SELECT contents, MAX(value) FROM example
WHERE 10 >= value;
SELECT contents, value FROM example
WHERE 10 >= (SELECT MAX(value) from example);
SELECT contents, MAX(value) from example
GROUP BY contents
HAVING MAX(value) <=10;
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/12/11 09:44
2020/12/11 10:28