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

mysql:9360

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

竹形です。
> > 次のような select 文を書くと distinct の有無で question_no の答え 1 が欠
> > 落してしまいます。何か間違えているでしょうか?
> > 
> > mysql> select  question_no from answer order by create_date desc limit 10;
> 
> distinctでどのレコードが選ばれているかが問題な気がします。
> limit 10を外すとどうですか。もしくはorder by question_noで試してみるとか。
>  create_date をselectしてみるとか。etc.

最後の1つは余計でした(余計なカラムを含めるとdistinctにならない)

こんなことをやってみました。
mysql> select id,a,b from test;
+----+------+------+
| id | a    | b    |
+----+------+------+
|  1 |    1 |    5 |
|  2 |    5 |    4 |
|  3 |    6 |    3 |
|  4 |    1 |    2 |
|  5 |    2 |    1 |
+----+------+------+
5 rows in set (0.00 sec)

mysql> select distinct a from test order by b;
+------+
| a    |
+------+
|    2 |
|    6 |
|    5 |
|    1 |
+------+
4 rows in set (0.00 sec)

id=1とid=4の行がdistinctで1つになっているのですが、ソートした結果を見ると、
id=1が残され、id=4が捨てられているような感じです。これにlimitをかけると、
島村さんのようなケースになるのではないでしょうか。

--
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]