Php 当日期是unix时间戳时需要帮助,需要当月的帮助

Php 当日期是unix时间戳时需要帮助,需要当月的帮助,php,mysql,Php,Mysql,我有一个疑问。因此,我收到NULL: SELECT * FROM `table1` WHERE `date` BETWEEN UNIX_TIMESTAMP(1438387200) AND UNIX_TIMESTAMP(1440979200) 我在这里找到了几个命令,但每一个命令都给了我答案 相同:NULL,但没有任何错误 有人知道该命令工作正常吗?在MySQL中,它将正常的日期时间字符串转换为UNIX时间。您可能需要的功能是。您可以像这样尝试: SELECT * FROM `table1`

我有一个疑问。因此,我收到
NULL

SELECT * FROM `table1` 
WHERE `date` BETWEEN UNIX_TIMESTAMP(1438387200) AND UNIX_TIMESTAMP(1440979200)
我在这里找到了几个命令,但每一个命令都给了我答案 相同:
NULL
,但没有任何错误


有人知道该命令工作正常吗?

在MySQL中,它将正常的日期时间字符串转换为UNIX时间。您可能需要的功能是。

您可以像这样尝试:

SELECT * FROM `table1` WHERE DATE_FORMAT(FROM_UNIXTIME(`date`), '%d-%m-%Y') BETWEEN DATE_FORMAT(FROM_UNIXTIME(1438387200), '%d-%m-%Y') AND DATE_FORMAT(FROM_UNIXTIME(1440979200), '%d-%m-%Y')

你有数据吗?你能提供吗?我已经在大学时代试过了。当我搜索1438387200时,由于00:00:00,我收到的结果是空的,我在表中没有确切的1438387200。在另一方面,当我搜索1438392609时,我收到结果的当天是什么,但01:30:09,但我需要查询2015年8月的月份。那么,您的
date
列是整数并存储UNIX时间还是MySQL日期、日期时间或时间格式?如果它是整数格式,那么您根本不需要FROM_UNIXTIME或UNIX_时间戳,只需使用整数搜索即可。如果是日期格式,则可以使用datetime函数选择所需日期的特定部分,例如,将Unix时间戳存储在varchar列中?如果是这样,您可以改变数据库模式,使用
integer
列,而不是
varchar
;或者在柱子上做石膏。后者类似于:
SELECT*FROM表,其中CONVERT(日期使用无符号整数)介于1438387200和1440979200之间前者是相同的SQL,只是没有
转换
试试这个:从
表1
中选择*WHERE date>=UNIX\u时间戳(最后一天(CURDATE())+间隔1天-间隔1个月)和createTime