前提・実現したいこと
postgres9.6で以下のようなテーブルがあります。
mydb=> select * from tab1; id |grp |name ---+-----------+------------------- 1 | コッペパン | いちごコッペパン 2 | コッペパン | オレンジコッペパン 3 | コッペパン | ブルーベリーコッペパン 4 | メロンパン | メロンパン 5 | 食パン | 食パン6枚切り 6 | 食パン | 食パン8枚切り
この表から以下のようにgrp列の重複をなくしたような結果をSELECT文で得ることは可能でしょうか
(コッペパンは、いちごコッペパンでもオレンジコッペパンでも、どれか1件だけ出力されてくれればよいです)
id |grp |name ---+-----------+------------------- 1 | コッペパン | いちごコッペパン 4 | メロンパン | メロンパン 5 | 食パン | 食パン6枚切り
試したこと
古いMySqlでは以下SQLで出力できたとの情報がWEB上にありましたが、postgres9.6ではエラーになりました。
mydb=> select * from tab1 group by grp; ERROR: column "tab1.id" must appear in the GROUP BY clause or be used in an aggregate function LINE 1: select * from tab1 group by grp;
回答3件
あなたの回答
tips
プレビュー