[前][次][番号順一覧][スレッド一覧]

mysql:9366

From: seiji takegata <seiji takegata <takegata@xxxxxxxxxx>>
Date: Fri, 14 May 2004 10:57:10 +0900
Subject: [mysql 09366] Re: distinct でデータ欠落

竹形です。

> pgsql=> select distinct question_no from test order by create_date desc limit 
> 10;
> ERROR:  for SELECT DISTINCT, ORDER BY expressions must appear in select list
> 

なるほど。

> こういうエラーを返されると「えー、なんでー」と、文句を言いながらも納得せざるを
> 得ないのですが、MySQL のように、すんなり答えが返ってくる場合は「どうして? lim
> it かけただけなのに」となってしまいますね。
> 

distinct は複数ある行のうちから1つを選ぶわけですが、どれを選ぶかは指定
できない(指定する方法が無い)ので、SELECT の対象になっていないカラム
をORDER BYで使うとソートの結果が不定になってしまうわけですよ。mysqlは
それを容認しておりPostgreSQLは許していないということですね。
私はPostgreSQLが正しいと思います。

--
seiji takegata
takegata@xxxxxxxxxx

[前][次][番号順一覧][スレッド一覧]

      9354 2004-05-13 23:53 [Koichi Shimamura <ma] distinct でデータ欠落                   
      9355 2004-05-14 00:11 ┗[seiji takegata <take]                                       
      9358 2004-05-14 01:32  ┣["KATAYOSE hakuo" <ka]                                     
      9359 2004-05-14 02:22  ┃┗[seiji takegata <take]                                   
      9360 2004-05-14 02:50  ┗[seiji takegata <take]                                     
      9364 2004-05-14 09:54   ┗[Koichi Shimamura <MA] Re: distinct でデータ             
      9365 2004-05-14 10:43    ┗[Koichi Shimamura <MA] Re: distinct でデータ欠落       
->    9366 2004-05-14 10:57     ┣[seiji takegata <take]                               
      9368 2004-05-14 11:29     ┗["HIROSE, Masaaki" <h]                               
      9371 2004-05-14 20:20      ┗[Koichi Shimamura <ma]