提问人:Lilcodemuffin 提问时间:11/15/2023 更新时间:11/15/2023 访问量:64
仅当 SQL 查询中存在列时,如何使用 CASE WHEN?[关闭]
How do I use CASE WHEN only if a column exists in my SQL query? [closed]
问:
我正在使用 SQL Server,我正在使用此查询:
SELECT * FROM database.schema.table where PRCS_DTE > DATEADD(day, -8, CONVERT (date, SYSDATETIME()))
ORDER BY CASE WHEN NXT_PRCS_DTE IS NULL THEN cast(null as date) END;
基本上,我想将 when is NULL 转换为 DATE 数据类型。这是因为当我尝试将该表中的 NULL 值插入到该表的另一个副本中时,它在我的 python 代码中出错,因为它将 NULL 读取为 varchar,并且无法将 varchar 插入 DATE 列。NXT_PRCS_DTE
我可以做类似的事情吗
SELECT * FROM database.schema.table where PRCS_DTE > DATEADD(day, -8, CONVERT (date, SYSDATETIME()))
ORDER BY CASE WHEN EXISTS (NXT_PRCS_DTE IS NULL) THEN cast(null as date) END;
因此,如果表中存在列NXT_PRCS_DTE,则它仅适用于 CASE WHEN?
答: 暂无答案
评论
ORDER BY