我的数据库中有两个表。 “ A”表是存储用户主要信息的主表,其他“ B”表用于存储用户要在其个人资料中添加其他地址的表。
两个表的结构(具有相同名称的公用列)如下图所示,除了一些差异列(未在此图片中显示)
现在我要显示存储在表A和表B中的地址
我在下面使用查询,但是所有这些仅返回表B中的值
查询1:
Select t1.(star),t2.(star) from `b` t2 , `a` t1 WHERE t1.emailbc = ?;
查询2:
Select t1.(star),t2.(star) from `a` t1
INNER JOIN `b` t2 ON (a.emailbc=b.emailbc)
WHERE t1.emailbc = ?
我也尝试了NATURAL Join,但这也不起作用。请让我知道解决方法。
最佳答案
如果要在一个列中显示所有地址,但来自两个表,则需要使用UNION
。尝试这个:
SELECT *
FROM table1
WHERE emailbc = ?
UNION
SELECT *
FROM table2
WHERE emailbc = ?