你可以用下面的查询尝试。
如果希望每个表的行:
SELECT 'Table1' AS Tbl, COALESCE((SELECT 'Yes' FROM Table1 WHERE Name = 'Joe'),'No') AS Exist
UNION ALL
SELECT 'Table2', COALESCE((SELECT 'Yes' FROM Table2 WHERE Name = 'Joe'),'No') AS Exist
UNION ALL
SELECT 'Table3', COALESCE((SELECT 'Yes' FROM Table3 WHERE Name = 'Joe'),'No') AS Exist
或者,如果你想单排和各表的列
SELECT
CASE WHEN t1.Name IS NULL THEN 'No' ELSE 'Yes' END as Table1
,CASE WHEN t2.Name IS NULL THEN 'No' ELSE 'Yes' END as Table2
,CASE WHEN t3.Name IS NULL THEN 'No' ELSE 'Yes' END as Table3
FROM Table1 t1
FULL JOIN Table2 t2 ON t1.Name = t2.Name
FULL JOIN Table3 t3 ON t1.Name = t3.Name OR t3.Name = t2.Name
AND t1.Name = 'Joe' AND t2.Name = 'Joe' AND t3.Name = 'Joe'
SQLFiddle DEMO
你可以发布你已经尝试了什么? –
外键概念不适用于检查存在的行 - 这是为表的ENFORCING规则。在你的情况下,为什么不使用简单的查询? – VikciaR