Ran*_*all 3 sql sql-server ignore character
简短的故事是我有一个带有varchar字段而不是datetime的SQL Server数据库(不要问,这是一个很长的故事,无法修复).不知何故,我们最近在这些字段中插入了奇怪/随机字符而不是应该存在的字符(NULL,'或YYYY-MM-DD).像这样:'?+ x',高位ascii字符.
该报告使用此查询来帮助将数据按到可用的东西(此处仅发布相关部分):
SELECT CASE WHEN c.CallStatus = 'Closed' THEN CAST(c.ClosedDate + ' ' + c.ClosedTime as datetime) ELSE NULL END as 'Closed Date'
WHERE CAST(c.closeddate AS DATETIME) BETWEEN @StartDate AND @EndDate
Run Code Online (Sandbox Code Playgroud)
但它对这个新的不良数据感到窒息.
如何更新查询以忽略错误数据,以便在查找错误数据源时可以运行报告?我的首要任务是让报告正常运行,其次是找到并杀死不良数据的来源.
CASE WHEN ISDATE(closeddate) = 1 THEN CAST(c.closeddate AS DATETIME) ELSE NULL END
Run Code Online (Sandbox Code Playgroud)