我有以下疑问:
SELECT dm.app_id, apt.app_name, COUNT(dm.app_id)
FROM dm_openapp dm
JOIN app_table apt ON dm.app_id = apt.app_id
GROUP BY dm.app_id
基本上,这个表也有与每条记录相关联的日期,我需要获取时间X和Y之间的所有记录的范围,例如,我尝试使用以下方法,但无济于事:
WHERE dm.dl_time BETWEEN '2011-05-31' AND '2011-05-06'
你知道该怎么做吗?dl_time列是timestamp类型。
发布于 2011-06-13 11:36:00
嗯..。你以错误的方式获得了数据。BETWEEN
必须是从低到高的值:
试试这个:
WHERE dm.dl_time BETWEEN '2011-05-06' AND '2011-05-31' -- Note date values swapped
你可以忽略其他答案,它们也没有注意到这一点...
发布于 2011-06-13 11:33:58
对于这些事情,最好使用DATETIME列类型。这应该是可行的:使用str_to_date()函数。另外,在两个值之间交换。
WHERE dm.dl_time BETWEEN str_to_date('2011-05-06','%Y-%m-%d') AND str_to_date('2011-05-31','%Y-%m-%d')
发布于 2020-07-13 15:05:42
SELECT date_column
FROM dates
WHERE date(date_column)<='2011-05-06' AND date(date_column)>='2011-05-31'
https://stackoverflow.com/questions/6329830
复制相似问题