请问,在mysql中如何查询每天固定时间段内的数据??
表结构,大概是这样的。我想用这些代码进行查询:SELECTxeng.score_history.pin,xeng.score_history.score,ulinkm_x...
表结构,大概是这样的。
我想用这些代码进行查询:
SELECT xeng.score_history.pin,
xeng.score_history.score ,
ulinkm_xedu.account.`Name`
FROM
xeng.score_history ,
ulinkm_xedu.account
WHERE
xeng.score_history.app_type = 'p24Point' AND
xeng.score_history.pin = ulinkm_xedu.account.PIN AND
xeng.score_history.date_time BETWEEN "DATE_FORMAT(date(), '%Y,%M,%D') > 20:00:00 " AND "DATE_FORMAT(date(), '%Y,%M,%D') < 20:30:00"
GROUP BY
xeng.score_history.pin
ORDER BY
xeng.score_history.score DESC 展开
我想用这些代码进行查询:
SELECT xeng.score_history.pin,
xeng.score_history.score ,
ulinkm_xedu.account.`Name`
FROM
xeng.score_history ,
ulinkm_xedu.account
WHERE
xeng.score_history.app_type = 'p24Point' AND
xeng.score_history.pin = ulinkm_xedu.account.PIN AND
xeng.score_history.date_time BETWEEN "DATE_FORMAT(date(), '%Y,%M,%D') > 20:00:00 " AND "DATE_FORMAT(date(), '%Y,%M,%D') < 20:30:00"
GROUP BY
xeng.score_history.pin
ORDER BY
xeng.score_history.score DESC 展开
4个回答
2022-12-01 · 百度认证:北京惠企网络技术有限公司官方账号
关注
展开全部
你应该把你要查的表结构说一下,表中是否有字段存时间??? \x0d\x0a你的between and 语法错误! \x0d\x0a\x0d\x0aSELECT a.pin, a.score , b.`Name`\x0d\x0aFROM xeng.score_history a, ulinkm_xedu.account b\x0d\x0aWHERE\x0d\x0aa.app_type = 'p24Point' AND\x0d\x0aa.pin = b.PIN AND \x0d\x0aUNIX_TIMESTAMP( a.date_time) BETWEEN UNIX_TIMESTAMP(CURDATE())+3600*10 AND UNIX_TIMESTAMP(CURDATE())+3600*20 \x0d\x0a \x0d\x0aGROUP BY\x0d\x0aa.pin\x0d\x0aORDER BY\x0d\x0aa.score DESC\x0d\x0a \x0d\x0a说明 UNIX_TIMESTAMP( a.date_time): 将日期格式转换为时间戳格式\x0d\x0a UNIX_TIMESTAMP(CURDATE()): 当天 00:00 的是时间戳 \x0d\x0a3600*10 :你设定的时间范围 单位:秒
展开全部
你应该把你要查的表结构说一下,表中是否有字段存时间???
你的between and 语法错误!
SELECT a.pin, a.score , b.`Name`
FROM xeng.score_history a, ulinkm_xedu.account b
WHERE
a.app_type = 'p24Point' AND
a.pin = b.PIN AND
UNIX_TIMESTAMP( a.date_time) BETWEEN UNIX_TIMESTAMP(CURDATE())+3600*10 AND UNIX_TIMESTAMP(CURDATE())+3600*20
GROUP BY
a.pin
ORDER BY
a.score DESC
说明 UNIX_TIMESTAMP( a.date_time): 将日期格式转换为时间戳格式
UNIX_TIMESTAMP(CURDATE()): 当天 00:00 的是时间戳
3600*10 :你设定的时间范围 单位:秒
你的between and 语法错误!
SELECT a.pin, a.score , b.`Name`
FROM xeng.score_history a, ulinkm_xedu.account b
WHERE
a.app_type = 'p24Point' AND
a.pin = b.PIN AND
UNIX_TIMESTAMP( a.date_time) BETWEEN UNIX_TIMESTAMP(CURDATE())+3600*10 AND UNIX_TIMESTAMP(CURDATE())+3600*20
GROUP BY
a.pin
ORDER BY
a.score DESC
说明 UNIX_TIMESTAMP( a.date_time): 将日期格式转换为时间戳格式
UNIX_TIMESTAMP(CURDATE()): 当天 00:00 的是时间戳
3600*10 :你设定的时间范围 单位:秒
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
留言取分.谢谢
select * from table where date_time>'最小时间段' and date_time<'最大时间段'
select * from table where date_time>'最小时间段' and date_time<'最大时间段'
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
提供表结构,及需求数据格式。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询