Php mysql查询,仅返回使用
如果我有一个具有时间戳列的表,并且我只想检索在创建由$time=strotime(“now”)设置的php变量后添加的行,那么我将如何格式化查询语法 $q=“从Php mysql查询,仅返回使用,php,mysql,syntax,Php,Mysql,Syntax,如果我有一个具有时间戳列的表,并且我只想检索在创建由$time=strotime(“now”)设置的php变量后添加的行,那么我将如何格式化查询语法 $q=“从webchat\u行中选择*,其中作者='someone'*{在$time和当前时间戳之间}*按idDESC LIMIT 20”排序” $q=“从webchat\u行中选择*,其中author='someone'和timestamp\u column介于$time'和当前\u timestamp之间” 试试: 这用于将strotime输出
webchat\u行
中选择*,其中作者
='someone'*{在$time和当前时间戳之间}*按id
DESC LIMIT 20”排序” $q=“从webchat\u行中选择*,其中author='someone'和timestamp\u column介于$time'和当前\u timestamp之间”
试试:
这用于将
strotime
输出(自1970年以来的秒数xx xx等)转换为日期,以便与时间戳列进行比较NOW()
是CURRENT\u TIMESTAMP()
的别名。到目前为止,其他答案都没有提到时间需要格式化为MYSQL
将时间转换为MYSQL日期时间字符串
运行SQL
我们正在使用中间运算符:
并使用日期格式:
mysql的日期格式是YYYY-MM-DD hh:MM:ssawesome,所以strotime(“now”)实例化的:$time将采用正确的格式?不,这行不通,请参见我的答案。strotime of now将为strotime(“now”)返回unix时间戳-+1。这是个好把戏,我没意识到它能做到
$q= "SELECT * FROM webchat_lines WHERE author = 'someone' AND timestamp between $time and NOW() ORDER BY id DESC LIMIT 20"
$q = "SELECT *
FROM webchat_lines
WHERE author='someone'
AND timestamp BETWEEN FROM_UNIXTIME($time) AND NOW()
ORDER BY id DESC
LIMIT 20";
$time = date_format(time(), 'Y-m-d H:i:s');
$q = "SELECT * FROM webchat_lines
WHERE author = 'someone' AND
timestamp BETWEEN '$time' AND NOW()
ORDER BY id DESC
LIMIT 20";