IF NULLIF(@date, '') IS NULL
select * from [dbo].[SRC_DSSI_OPER_STAT]
else
select * from [dbo].[SRC_DSSI_OPER_STAT] where CONVERT(DATE, (shift_start_date)) = CONVERT(DATE, @date - 1)
如何将此T-sql代码转换为PostgreSQL
答案 0 :(得分:0)
假设@date是一个字符串,在postgresql中我会称之为 input_date
IF input_date = '' THEN
select * from "SRC_DSSI_OPER_STAT";
ELSE
select * from "SRC_DSSI_OPER_STAT" where shift_start_date::date = input_date - interval '1' day;
END IF;
您可能会遇到有关日期格式的问题,在这种情况下,您必须更多地处理日期转换。