如何在表中分出今天的日期(或查找间隔id天)?

问题描述 投票:0回答:1

我正在使用Vertica SQL,并有以下表。

CREATE temp TABLE XXX (DATE TEXT, PRICE INTEGER);
INSERT INTO XXX VALUES 
('2019-04-27 01:00', 1), ('2019-04-27 02:30', 3), ('2019-04-27 18:00',2), 
('2019-04-28 17:00', 2), ('2019-04-28 21:00', 5), 
('2019-04-29 17:00',50), ('2019-04-29 21:00',10), 
('2019-04-30 17:00',10), ('2019-04-30 21:00',20), 
('2019-05-01 17:00',40), ('2019-05-01 21:00',10), 
('2019-05-02 17:00',10), ('2019-05-02 21:00', 6);

我想在表中找到今天和日期之间的差异(以天为单位计算)。

select (date_trunc('month',DATE)-date_trunc('month',current_date)) as DATE, PRICE from XXX

据我所知,初始表有13行,但是date_trunc('month',current_date)有1行。结果我出现了一个错误。如何解决这个问题?

由于我使用Vertica,我应该在标签中添加PostgreSQL或MySQL吗?

sql vertica
1个回答
2
投票

试着用任一 datedifftimestampdiff

 datediff('day', date , Now()) as DaysBetweenDates

 timestampdiff(day, date, Now()) as DaysBetweenDates
© www.soinside.com 2019 - 2024. All rights reserved.