簡體   English   中英

從SQL查詢結果中獲取計數

[英]get count from sql query result

我有這樣的查詢

SELECT `id`
FROM (`TABLE`)
WHERE date(FROM_UNIXTIME(time)) >= '2013-10-28'
GROUP BY `last`
ORDER BY `id_s` DESC

結果是:

| id |

9
1個
1個
9
50
3
1個

我的問題是如何計算結果重復9的次數?

因此,最終結果必須是數字2的一行

有人知道怎么做?

您將使用count(*)

SELECT count(distinct last)
FROM (TABLE)
WHERE date(FROM_UNIXTIME(time)) >= '2013-10-28' AND
      id = 9 ;

我不確定該group by實際工作,所以這樣做可能就足夠了:

SELECT count(*)
FROM (TABLE)
WHERE date(FROM_UNIXTIME(time)) >= '2013-10-28' AND
      id = 9 ;

您可以只使用已有的結果集,從中選擇id = 9並計算行數:

SELECT COUNT(*)
FROM (
  --your current query here
) WHERE `id`=9
GROUP BY `id`

在您遇到的情況下,可能會有更好的方法來執行此操作,但是在不了解表結構和可能看不到示例數據的情況下,這很難分辨。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM