2014-02-22 126 views
0

這應該很簡單,但我正在努力處理這個查詢。使用DISTINCT和COUNT複雜的mySQL查詢返回結果

我的第一個查詢:

(SELECT DISTINCT(firstdaytaken) AS dates, stid FROM tmp_student_pages) 

回報

....dates......|.....stid 

2014-02-19.....|.........1 

2014-02-22.....|.........2 

2014-02-22.....|.........3 

我想ONE完整的查詢返回DISTINCT日期和計數的EACH

喜歡的東西

unique dates...|.....tot experiences 
______________________________ 

2014-02-19.......|...........1 

2014-02-22.......|...........2 

在此先感謝 - 已經花了太多時間在試圖得到一個解決方案 這是據我已經得到了 - 與不正確的結果

SELECT COUNT(DISTINCT(newdates)),newdates 
FROM 
(SELECT DISTINCT(dates) AS newdates 
FROM 
(SELECT DISTINCT(firstdaytaken) AS dates, stid FROM tmp_student_pages) d) f 
GROUP BY newdates 

* 注意 我添加了一個鏈接到一個數據庫表的圖形 - 希望有所幫助。

http://www.quizzicle.com/examples/tmp_student_pages.gif

+0

請包括數據以及要求的結果樣本,以便更容易地爲您提供幫助。 –

+0

對不起 - 第一次發佈在這裏 - 如果任何人無法幫助,也可以爲未來的任何職位。 – user3341559

回答

2

看來你想要一個group by查詢與count

SELECT firstdaytaken, count(stid) FROM tmp_student_pages 
group by firstdaytaken; 
+0

這很接近,但結果如下: firstdaytaken ...... count(stid) 2014-02-19 ............. 22 2014-02-22 ... .......... 43 – user3341559

+0

這很接近,但結果如下: firstdaytaken ...... count(stid) 2014-02-19 ............ .22 2014-02-22 ............. 43 請參閱tmp_student_pages表格,其中包括學生體驗的課程的每個頁面 - 每個頁面行包括stid列和datetime (firstdaytaken)列。 我需要從tmp_student_pages表格中檢索的是DISTINCT firstdaytaken和當天第一次體驗課程的學生人數(stid)。 我會嘗試編輯問題幷包含tmp_student_pages表以供參考。 – user3341559

+0

GOT IT - 對上述查詢的輕微調整提供了結果。 SELECT COUNT(DISTINCT( STID )),firstdaytaken FROM tmp_student_pages GROUP BY firstdaytaken LIMIT 0,30 許多感謝 – user3341559