0

如何获取查询的这一部分以按时间范围获取值?

表格示例:

  select * from tablename where timeregister between '2017-01-11' And '2017-01-30';

我怎样才能让timeregister 是最后7 天?我正在尝试这个:

select * from tablename where timeregister(NOW(), timeregister) <= 7;
4

3 回答 3

3

用这个 :

 SELECT * FROM table WHERE timeregister >= DATE(NOW()) - INTERVAL 7 DAY
于 2017-11-29T09:04:03.603 回答
0

尝试这个....

<?php 
    $s_date = date('Y-m-d');
    $e_date = date('Y-m-d',strtotime('+7 days'));
    $sql = 'SELECT * FROM tablename WHERE DATE_FORMAT(timeregister, "%Y-%m-%d") BETWEEN "'.$s_date.'" AND "'.$e_date.'"';
?>
于 2017-11-29T09:07:04.837 回答
0

您使用的是 MSSQL 还是 MYSQL?如果是 MSSQL,那么您可以使用 DATEADD 函数。请参阅下面的脚本:

SELECT * FROM table WHERE timeregister between DATEADD(DD,-7,GETDATE()) and GETDATE()
于 2017-11-29T09:32:06.483 回答