- 締切済み
年月でdistinctしたい(PostgreSQL)
PostgreSQLでdistinctの使い方についての質問です。 t_mainのDDATEカラム(DATE)に DDATE ============================ 20030929 20030930 20031001 20031002 ・ ・ ・ というデータが入っています。 このデータのうち、年月でdistinctした データが欲しいので、以下のようにSQLを組みました。 =========================================== select distinct substring(DDATE from 1 for 6) from t_main order by DDATE これでは値が取得できなかったので、次に =========================================== select distinct TO_CHAR(DDATE,'YYYYMM') from t_main order by DDATE としましたが、これも値が返ってきません。 上手に年月でdistinctできる方法を教えてください。 欲しいのは ======== 200309 200310 という結果です。 宜しくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- FlossenEngel
- ベストアンサー率77% (132/170)
回答No.1
お礼
アドバイスありがとうございます。 Oracleの場合、select句で選択していない列でもorder byに指定する事が可能なのですが、PostgreSQLは違うのでしょうか? PostgreSQLはほとんど触った事が無いので。。 試しにエイリアスをつけてみましたがやはりダメでした。 ちなみにto_char(DDATE,'YYYYMM')でgroup by しても値は返ってきませんでした。 何か良い方法は無いでしょうか。