MYSQL 将日期和时间字段合并为日期时间值

标签 mysql datetime

我的表中有两列我想合并,以便稍后检查值。

第一列是open_date (DATATYPE = DATE)

第二列是open_time (DATATYPE = TIME)

我想合并这些值,如下所示:2013-04-26 12:34:57

然后我必须检查合并的日期时间是否早于今天。

这是我的查询:

SELECT * FROM blog_articles WHERE concat(open_date,' ',open_time) <= DATETIME()

但是我得到以下错误:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '() ORDER BY `open_date` DESC 
LIMIT 0, 25' at line 1 

最佳答案

你应该使用 now()不是 datetime()(这是一种数据类型,不是函数)。

其次,最好使用 timestamp() 构建日期时间功能:

SELECT * FROM blog_articles
WHERE timestamp(open_date,open_time) <= NOW()

关于MYSQL 将日期和时间字段合并为日期时间值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36960993/

相关文章:

php - 如何检查数据库中出现的单词?

php - 在 PHP 中将 mysql 信息从一个页面移动到另一个页面

c# - 给定开始日期如何根据闰年找到有 365 或 366 天的结束日期

Java从字符串中解析带时区的日期

php - MySQL PDO;从排序结果中获取行,并且它的位置唯一

php - sql数据验证中的循环问题

python - 在 while 语句中比较两个日期时程序空闲

javascript - 使用正则表达式,Javascript 中是否还有其他方法可以从具有时区的字符串中提取日期

java - 如何在上传前将 CSV 文件中的记录与数据库中的记录进行比较

python - 如何在不添加参数的情况下对基于时间的函数进行单元测试