我有三个表Pub
、Boo
和Per
。
Boo.num
是对Pub.serial
的引用
Per.num
是对Pub.serial
的引用(意味着Pub
具有关于它们两者的信息)
我想知道Pub
上的一行属于Per
或Boo
。
我该怎么做
(我只需要一个额外的字段有0或其他数字来确定数据属于其中的哪一个)
可以认为Pub是Boo和Per的父表,而这些表是Pub的类型。
我真的不确定这是否是你想要的,但值得一试:
select Pub.serial,
(select count(*) from Boo where Boo.num = Pub.serial) as Boo_Count,
(select count(*) from Per where Per.num = Pub.serial) as Per_Count
From Pub
Order by Pub.serial
您想要
SELECT Boo.num, per.num
FROM Pub
LEFT JOIN Boo ON Pub.serial=Boo.num
LEFT JOIN Per ON Pub.serial=Per.num
看看他们中的哪一个有数据。