amazon-redshift - 在 Redshift 中将文本转换为日期时收到错误
问题描述
我正在运行一个查询,表明 Redshift 在“SQL 错误 [500310][57014]:Amazon 无效操作:将文本转换为日期时出错;”
但是,当我删除联接表或从 WHERE 子句中删除转换时,它不再引发错误。因此,我怀疑发生了其他事情,并且此错误具有误导性。
我查看了数据,没有一个日期看起来很奇怪或超出范围。
这是引发错误的查询:
SELECT m.member_id,
t.tracker_id,
DATE(ma.yyyymmdd) AS tracked_date,
DATE(ma.updated_date) AS updated_date
FROM import_genesis.member_activities ma
INNER JOIN master."member" m
ON ma.memberid = m.member_legacy_id
INNER JOIN master.action_activity aa
ON ma.activity_type = aa.activity_type
INNER JOIN master.tracker t
ON t.action_id = aa.action_id
WHERE DATE(ma.yyyymmdd) > DATE(DATEADD(DAY, -14, GETDATE()))
AND DATE(ma.yyyymmdd) <= GETDATE();
以下是两个不会引发错误的查询:
SELECT DATE(ma.yyyymmdd) AS tracked_date,
DATE(ma.updated_date) AS updated_date
FROM import_genesis.member_activities ma
WHERE DATE(ma.yyyymmdd) > DATE(DATEADD(DAY, -14, GETDATE()))
AND DATE(ma.yyyymmdd) <= GETDATE();
SELECT m.member_id,
t.tracker_id,
DATE(ma.yyyymmdd) AS tracked_date,
DATE(ma.updated_date) AS updated_date
FROM import_genesis.member_activities ma
INNER JOIN master."member" m
ON ma.memberid = m.member_legacy_id
INNER JOIN master.action_activity aa
ON ma.activity_type = aa.activity_type
INNER JOIN master.tracker t
ON t.action_id = aa.action_id;
关于可能出现什么问题或任何潜在解决方法的任何想法?
解决方案
推荐阅读
- android - 自定义按钮样式出现在预览中,但不在设备 API 27 上
- java - 从 selenium 中的网页获取 .getAttribute 有效性的子值
- sql-server - 尝试运行 db.Execute 命令时出现“/应用程序中的服务器错误”
- java - 无法使用转换 IdentityTransform 转换文件“pp-release.aar”以匹配属性 {artifactType=processed-aar}
- sql-server - 通用交易的ETL转换为Bet and Win
- keycloak - Keycloak Session and Token Timeout:客户端登录超时
- reactjs - 如何使用 create-react-app 将图像添加到列表(排行榜表)中的第一位用户?
- performance - Go 的 once 类型的效率测量
- android - 以编程方式将 TextView 样式设置为 TabLayout.Tab 默认样式
- spring - Spring Boot Mail 使用访问令牌发送电子邮件