我有一个存储过程,它基本上包含两次相同的查询。
好吧,这是愚蠢的。我这样做的原因是因为在一个案例中我在一个表上使用了LEFT JOIN
而另一个表是INNER JOIN
IF @param = 1
BEGIN
--SELECT 1 with the INNER JOIN
END
ELSE
BEGIN
--SELECT 2 with the LEFT JOIN
END
有更优雅的方法吗?
答案 0 :(得分:0)
您可以使用动态SQL,根据不同的参数在varchar变量中构建查询,并在最后执行结果。
答案 1 :(得分:0)
我终于改变了应用程序的功能,所以我不再需要它了。
经过几次测试后,tlbignerd在问题评论中的解决方案看起来就像是为我做这个的最佳方式。