如何检查SQL中哪个表存在于哪个表中?

时间:2014-11-04 14:14:11

标签: sql

我有两个具有相同列的表,比如表A和表B,两者都有列ID。我有一个ID'ABC'的值。如何检查ABC存在于哪个表的ID列中?我需要输出作为表名。

2 个答案:

答案 0 :(得分:1)

SELECT 'A' as table_name FROM DUAL WHERE EXISTS( SELECT 1 FROM A WHERE id = 'ABC')
UNION ALL
SELECT 'B' FROM DUAL WHERE EXISTS( SELECT 1 FROM B WHERE id = 'ABC')

DUAL是一种您可以使用的占位符,如果您没有可供选择的表格。

答案 1 :(得分:0)

select tab from (
  select 'A' tab, count(*) n from tabA where id = 'ABC'
  union all 
  select 'B' tab, count(*) n from tabB where id = 'ABC'
) where n > 0;