簡體   English   中英

SELECT在不同日期的記錄SQL

[英]SELECT records on distinct dates SQL

我想獲取數據庫中具有3條或更多記錄的所有用戶,但是他們不能具有相同的日期。 表格示例:

User1 40 12/11/15
User1 33 13/11/16
User1 23 04/09/16
User2 21 30/09/16
User3 12 12/11/16
User3 54 12/11/16
User3 99 04/09/16

因此,從這里開始,我只想獲取User1,User3擁有3條記錄,但是由於其中2條記錄在同一天,因此他沒有資格。 如果同一天有兩個或兩個以上記錄是可以的,只要在不同的日期至少有3個記錄,那么如果我們在不同的日期為user3添加一個以上的記錄,他也將滿足要求。

到目前為止,這是我的查詢:

SELECT id, price, date
FROM Table
WHERE id
IN (

SELECT id
FROM Table
GROUP BY id
HAVING COUNT( ocust ) >=3
)

它可以滿足3條或更多條記錄的要求,但是我不知道如何滿足不同的日期要求。

你只需要添加DISTINCTCOUNT ,並改變ocust (無論是)到date

SELECT id, price, date
FROM Table
WHERE id
IN (
    SELECT id
    FROM Table
    GROUP BY id
    HAVING COUNT(DISTINCT date ) >=3   -- Added DISTINCT, changed 'ocust' to 'date'
)

暫無
暫無

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

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