我正在尝试将字符串转换为日期:
SELECT
DATE(date_string) AS my_date
FROM table
Error converting text to date.
是否有一种方法可以查看哪个条目正在发生这种情况?例如,在编程语言中我可以使用try except循环。
您可以使用Try_Cast
将字符串转换为日期。对于失败的数据将返回null。然后,如果您只选择TRY_CAST(date_string AS DATE)
返回null的行,您将得到您的答案。
SELECT date_string
FROM table
WHERE TRY_CAST(date_string AS DATE) IS NULL;
amazon redshift的替代解决方案:
SELECT date_string
FROM myTable
WHERE CASE
WHEN date_string LIKE '%/%/%' THEN
TO_DATE(date_string, 'MM/DD/YYYY')
WHEN date_string LIKE '%-%-%' THEN
TO_DATE(date_string, 'YYYY-MM-DD')
ELSE NULL
END IS NULL;