如何在where子句中比较Timestamp

Bas*_*sel 4 mysql sql timestamp where-clause

我有一个带有timestamp列的表我想获取特定月份中的时间戳(例如,9月1日和30 septemper之间的timpestamp)的值,如果月份为31天,则考虑该值.我用这个查询:

SELECT users.username, users.id, count(tahminler.tahmin)as tahmins_no FROM users LEFT JOIN tahminler ON users.id = tahminler.user_id  GROUP BY users.id having count(tahminler.tahmin) > 0
Run Code Online (Sandbox Code Playgroud)

我能加where timestamp IN(dates_array)吗?

date_array将是整个月的日期?

jue*_*n d 15

SELECT users.username, users.id, count(tahminler.tahmin)as tahmins_no 
FROM users 
LEFT JOIN tahminler ON users.id = tahminler.user_id  
where year(timestamp) = 2013 and month(timestamp) = 9
GROUP BY users.id 
having count(tahminler.tahmin) > 0

要使它能够与索引一起使用

SELECT users.username, users.id, count(tahminler.tahmin)as tahmins_no 
FROM users 
LEFT JOIN tahminler ON users.id = tahminler.user_id  
where timestamp >= '2013-09-01' and timestamp < '2013-10-01'
GROUP BY users.id 
having count(tahminler.tahmin) > 0
Run Code Online (Sandbox Code Playgroud)