[pgsql-jp: 33473] Re: SELECT文をまとめたいのですが。

ml ml @ naviokinawa.com
2004年 7月 2日 (金) 13:23:40 JST


shin-1 @ ca2.so-net.ne.jp 様
maeda@MLです。
ありがとうございます。

以前教えてもらった文でSUM(num)の降順で並び替えをしたく、
色々試しましたが、エラーが出て駄目でした。

SELECT DISTINCT ON (s1.o_code) s1.o_code, s2.o_name, s2.category, s3.total
 FROM y200406 s1, item s2,
 (SELECT o_code, SUM(num) AS total FROM y200406 GROUP BY o_code) AS s3
 WHERE s1.o_code = s2.o_code AND s3.o_code = s1.o_code
 ORDER BY s3.total DESC

# ERROR:  SELECT DISTINCT ON expressions must match initial ORDER BY expressions


>SELECT s1.o_code, s2.o_name, s2.category, s1.gokei
> FROM (SELECT o_code, SUM(num) gokei FROM y200405 GROUP BY o_code) s1,
> item s2
> WHERE s1.o_code = s2.o_code

この方法だと結果も同じだし、並び替えもすんなりいけますね。
文も短くなっているので見やすいですね(^^

ありがとうございます。
勉強になりました。



pgsql-jp メーリングリストの案内