我的查询中有很多CASE WHEN语句,我经常在其他查询中使用。
有没有办法存储这些CASE WHEN语句,以便我可以在需要时调用它们?或者,每次必须写出这些吗?
谢谢!
答案 0 :(得分:2)
您可以使用代码段和模板:
https://ctrlshiftb.wordpress.com/2010/03/01/snippets-for-sql-server-management-studio-ssms/
答案 1 :(得分:0)
您当然可以在函数中封装CASE-WHEN
,然后从SQL中调用它。但是,如果你这么做很多,你可能想要考虑将这些值放在查找表中并通过连接找到值更有意义。
以下是Oracle的示例函数。
CREATE OR REPLACE FUNCTION case_alternative (value1 NUMBER)
RETURN NUMBER IS
BEGIN
RETURN CASE value1
WHEN 1 THEN 'First Value'
WHEN 2 THEN 'Second Value'
ELSE 'Other Value'
END;
END case_alternative;