Teradata无法将日期字符串转换为数值

Teradata无法将日期字符串转换为数值,teradata,Teradata,我在网上搜索了stackoverflow和,但找不到确切的答案。您可以在下面看到我的查询。我无法理解为什么会收到错误消息字符串转换为数值失败。我得出的结论是这行代码,因为当我注释掉它时,我没有得到错误消息,而是得到了另一条。取而代之的是,我没有更多的线轴空间,这对我来说是有意义的 SELECT a.store_nbr AS club_number, a.visit_date, count(transaction_id) FROM table_one WHERE division = 1 AN

我在网上搜索了stackoverflow和,但找不到确切的答案。您可以在下面看到我的查询。我无法理解为什么会收到错误消息字符串转换为数值失败。我得出的结论是这行代码,因为当我注释掉它时,我没有得到错误消息,而是得到了另一条。取而代之的是,我没有更多的线轴空间,这对我来说是有意义的

SELECT a.store_nbr AS club_number, a.visit_date, count(transaction_id)
FROM table_one
WHERE division = 1
  AND a.visit_date BETWEEN '2020-01-01' AND '2020-02-01

如果您将文字日期改为日期-
date'2020-01-01
和date'2020-02-01'`,会发生什么情况。用于比较的从字符串到日期的隐式转换将使用为列定义的格式。最好是@Andrew建议的——在提供文字日期时使用标准日期文字。另一种方法是使用CAST或以显式格式显示日期,或者确保字符串格式与列格式匹配-要么更改字符串,要么更改列。这有点奏效。我不知道发生了什么事。我现在没有收到错误消息,但是现在我得到了一堆超出日期范围的数据。我会继续玩它