我在这里有一个查询,我很好奇是否有更短的方法来编写这个查询,这意味着减少查询使用IF
参数来确定它是否应该在语句中使用参数。请看下面:
@Param varchar(10) = NULL
IF @Param IS NOT NULL
BEGIN
SELECT * FROM TABLE WHERE Column = @Param
END
ELSE
BEGIN
SELECT * FROM TABLE
END
这可以简化为一个简单的查询,而不是像这样吗?
@Param varchar(10) = NULL
SELECT * FROM TABLE WHERE Column = COALESCE( Any, @Param )
我看了看Coalesce
,但没有看到我是否可以使用Any
某种功能。我希望这是有道理的。
问题是如何实现这一点。第二个问题是哪个性能更好?