0

有一个称为 DateA 的列。如何选择“Yesterday_Date”、“Last_Seven_Day_Date”、“Life_Time_Date”?

DateA

2013-02-28
2013-02-27
2013-02-26
---
---
2013-01-30
2013-01-29
2013-01-28

对于昨天的日期,我认为我们可以这样做:

select date_sub(curdate(),interval 1 day) as 'Yesterday';

输出/输出:

2013-03-04

-- 例如,如果我在 TableA 上有两列 Date 和 ID。在 select 语句中,如果我说“Yesterday_Date”,则需要显示 1 天的数据。如果我说“Last_Seven_Day_Date”,它需要显示最近 7 天的数据。如果我说“Life_Time_Date”,它需要显示表中的所有数据。

该 select 语句会是什么样子?

谢谢!

4

3 回答 3

1

您的 where 子句如下所示:

昨天:

WHERE `Date` = date_sub(curdate(), interval 1 day)

过去 7 天:

WHERE `Date` >= date_sub(curdate(), interval 7 day);

全部(Life_Time_Date):无WHERE子句

于 2013-03-05T17:09:28.857 回答
0

这个你去

   select date_sub(curdate(),interval 1 day) as Yesterday , 
          date_sub(curdate(),interval 7 day) as seven_days_ago ,
          min(DateA) as Life_Time_Date 

min 表示存储在 中的第一个日期。

于 2013-03-05T17:35:59.793 回答
0

以下是我所做的并且有效:

select date_sub(curdate(),interval 1 day), 'Yesterday' union
select date_sub(curdate(),interval 7 day), 'Last 7' union
select date_sub(curdate(),interval 14 day), 'Last 14' union
select date_sub(curdate(),interval 14 day), 'Last 30' union
select min(dateFact), 'LifeTime' from TBLA;

然后我选择列[0]。

谢谢你们。

于 2013-03-07T17:52:36.667 回答