C# 用于检查多个表中是否存在特定产品的SQL查询

C# 用于检查多个表中是否存在特定产品的SQL查询,c#,sql-server-2008,C#,Sql Server 2008,我有7个表,每个表将包含一个特定产品的条目。我想检查是否所有7个表都包含一个特定ID的条目(例如:4562)。ie,数据是否存在。我正在使用SQL server 2008。请帮助我编写查询以检查状态 如果执行基本联接而不是左联接,则产品仅在所有表中出现 select * from tab1 join tab2 on tab2.id = tab1.id join tab3 on tab3.id = tab1.id join tab4 on tab4.id = tab1.id join tab

我有7个表,每个表将包含一个特定产品的条目。我想检查是否所有7个表都包含一个特定ID的条目(例如:4562)。ie,数据是否存在。我正在使用SQL server 2008。请帮助我编写查询以检查状态

如果执行基本联接而不是左联接,则产品仅在所有表中出现

select * from tab1
join tab2 on tab2.id = tab1.id 
join tab3 on tab3.id = tab1.id 
join tab4 on tab4.id = tab1.id 
join tab5 on tab5.id = tab1.id 
Where tab1.id = 1234
etc etc

尝试以下命令(例如3个表T1、T2、T3)。如果所有表中都存在
ID=4562
,则返回
1
;如果至少有一个表缺少此ID,则返回
0

SELECT 
       CASE WHEN 
         (
              EXISTS(SELECT ID FROM T1 WHERE ID=4562)
          AND EXISTS(SELECT ID FROM T2 WHERE ID=4562)
          AND EXISTS(SELECT ID FROM T3 WHERE ID=4562)          
         )
         THEN 1 
         ELSE 0
       END AS [ID_Exists_in_all_tables]

如果执行基本联接而不是左联接,则产品仅在所有表中出现时才会显示。从tab2.id=tab1.id何处tab2.id='121'上的tab1 join tab2中选择*是的,对不起,忘记了where子句。如果5个表,我如何编写?我不熟悉联接