0

ここで、「2006 年 8 月 26 日の Galt Barber」の個別の最適化に関するアドバイスを受けようとしてい ます。

私のクエリは次のようになります。

 SELECT COUNT( `pUserDirectLabor`.`pDate` ) as `daysWorked` 
 FROM   ( SELECT  DISTINCT `user_direct_labor`.`date`  as `pDate`  
       FROM user_direct_labor 
       GROUP BY user_direct_labor.`date`)  
 AS pUserDirectLabor,  user_direct_labor   

ここで照会されるテーブルは 1 つだけです。テーブルには日時型user_direct_laborの列があります。dateテーブルには 12 行あります。2013-06-28 00:00:00 形式には 6 つの一意の日付があります。

サブクエリだけを単独で実行すると、データベースから 6 行が返され、すべてが期待どおりの一意の日付になります。

count() を追加すると、結果は 54 になります。54 がどこから来ているのかわかりません。私はサブクエリにはかなり初心者です。

COUNT( 1 ) に変更しても、54 が返されます。なぜ COUNT(1) を使用するのかわかりませんが、この人が話していたことです。 MySQLのサブクエリでcount(distinct)を表現するには?

誰でも私に何か指針を与えることができますか?

4

1 に答える 1