私はテーブルのABCに2列の列、PIN
とFROM_DATE
を持っています。 PIN
でグループ化したい場合はcount > 1
となり、結果セットをFROM_DATE
列に設定したい場合もあります。 私は、試してみました選択したステートメントでグループ化し、順序付けします。
SELECT pin, from_date, COUNT(*) AS repetition
from ABC
GROUP BY pin
HAVING COUNT(*) > 1
ORDER BY from_date;
上記の文は私に'not a GROUP BY expression'
エラーを与えています。 すべてGroup by
のhaving
とorder by
を入れる方法select
ステートメント?
' from_date':
pin
ごとに2つ以上があるときにfrom_date
秒のすべてをしたい場合はは、あなたは分析関数を使用することができます無効です。それは 'GROUP BY'節にも存在しなければなりません(あるいは' COUNT() '、' SUM() 'のような集約関数の引数として使われなければなりません)。実際、データベースエンジンは、あなたが投稿したエラーメッセージでも同じことを伝えています。 'pin'と同じ値を持つレコード(同じグループに入っているレコード)は' from_date'の値が異なっていて、 'SELECT'式" from_date "のどの値を指定するのか指定していないので無効です。 。 – axiac
*「カウントが1以上のPINでグループ化したいが、FROM_DATE列に結果セットを作成したい」* - これはあなたが望むものではありません。これは、あなたが望むものを達成するためのSQL方法(kindof)です。 SQLの概念を使用せずに、期待どおりの結果を英語で表現してみてください。あなたが開発者であることを忘れて、ユーザーと考えてください。 – axiac
from_dateをselect句に入れると、結果セットは得られません。私はPINでグループ化したいので、from_date列にグループを配置したい。 – NJMR