【发布时间】:2020-09-08 00:33:47
【问题描述】:
我正在尝试根据“本月最佳投票”和“本周最佳投票”等时间戳从 mysql 表中提取数据 这是用于收集本周(第 4 周)最高票数的 mysql 声明
"SELECT * FROM studentid.questions WHERE vote IN (SELECT MAX(vote) FROM studentid.questions WHERE timestamp BETWEEN '"+currentYear+"-"+currentMth+"-19 00:00:00' AND '"+currentYear+"-"+currentMth+"-24 23:59:59');
这是收集当月(5月)最高票的mysql语句
"SELECT * FROM studentid.questions WHERE vote IN (SELECT MAX(vote) FROM studentid.questions WHERE timestamp BETWEEN '"+currentYear+"-05-01 00:00:00' AND '"+currentYear+"-05-31 23:59:59')"
不知何故,sql语句返回日期范围之外的结果,例如,如果在5月份,有一个数据的票数等于2月份的另一个数据,它会同时显示它们,当它应该只显示从五月... sql results
【问题讨论】:
-
使用参数而不是字符串连接。
-
@The Impaler by parameters 是指使用 SQL 函数,如 Year()、Month() 等吗?
标签: java mysql date calendar timestamp