日期之间(开始和现在)

urd*_*boy 5 sql presto

不确定如何使用此NOW()功能。似乎应该是直截了当的,但是我没有运气

SELECT DISTINCT field
FROM table
WHERE field BETWEEN '2019-01-01' and NOW()
Run Code Online (Sandbox Code Playgroud)

字段= varchar

Luk*_*zda 4

您应该匹配数据类型以避免隐式转换:

SELECT DISTINCT field
FROM table
WHERE CAST(field AS DATE) BETWEEN DATE '2019-01-01' AND CURRENT_DATE;
Run Code Online (Sandbox Code Playgroud)
SELECT DISTINCT field
FROM table
WHERE DATE(field) BETWEEN DATE '2019-01-01' AND CURRENT_DATE;
Run Code Online (Sandbox Code Playgroud)

  • `DATE '2019-01-01'` 是日期文字的语法。(https://prestosql.io/docs/current/functions/datetime.html)。您不需要为此使用强制转换或“日期”函数。 (2认同)