我想通过在两个日期之间使用'between'限制检索到的行。
我使用的“销售日期”列包含以下信息
SALEDATE DATE FORMAT 'YYYY-MM-DD' NOT NULL
我使用的代码:
SELECT *
FROM trnsact
WHERE saledate BETWEEN '2005-01-01' AND '2005-06-30';
然后我得到一个错误'错误代码-3535 错误消息-[Teradata数据库] [TeraJDBC 15.10.00.09] [错误3535] [SQLState 22003] 字符串转换为数值失败。'
我也尝试过DATE:
SELECT *
FROM trnsact
WHERE saledate BETWEEN DATE '2005-01-01' AND DATE '2005-06-30';
但最终会出现另一个错误 错误消息-[Teradata数据库] [TeraJDBC 15.10.00.09] [错误3706] [SQLState 42000]语法错误:无效的DATE文字。
感谢您的帮助
答案 0 :(得分:1)
您需要使用DATE
文字:
SELECT *
FROM trnsact
WHERE saledate BETWEEN DATE '2005-01-01' AND DATE '2005-06-31';
答案 1 :(得分:0)
试试下面的teradata查询。不过为时已晚。
SELECT *
FROM trnsact
WHERE saledate BETWEEN
to_date('2005-01-01','YYYY-MM-DD') AND
to_date('2005-06-30','YYYY-MM-DD') ;