SQL Server,根据参数在 WHERE 语句中使用 IF 语句从两个 TABLE 中进行选择 [英] SQL Server, choosing from two TABLEs using IF statement inside WHERE statement depending on the parameter

查看:47
本文介绍了SQL Server,根据参数在 WHERE 语句中使用 IF 语句从两个 TABLE 中进行选择的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何在 SQL Server 中执行以下操作

How can I do the following in SQL Server

DECLARE @Local nvarchar(20)
SET @Local = 'True'

    SELECT * FROM My_Table
    WHERE my_ID IN

    (IF @Local = 'True' 
         SELECT AllIDs FROM ATable
    ELSE 
         SELECT TeamIDs FROM TeamTable
    )

推荐答案

加入工会 :-

SELECT * FROM My_Table WHERE my_id IN
(
  SELECT AllIDs AS MyIDs FROM ATable WHERE @Local = 'True'
  UNION
  SELECT TeamIDs AS MyIDs FROM TeamTable WHERE @Local <> 'True'
)

这篇关于SQL Server,根据参数在 WHERE 语句中使用 IF 语句从两个 TABLE 中进行选择的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆