我需要创建一个包含n行值的视图(或表),取自两个具有相同结构的不同表。例如:
表国家
id name Country
----------------------------
1 Franz Germany
2 Alberto Italy
3 Miguel Spain
表格电子邮件
id name Email
----------------------------
1 Franz franz@gmail.com
2 Alberto alberto@gmail.com
3 Miguel miguel@gmail.com
表poneno
id name Phone
----------------------------
1 Franz 111-111-1111
2 Alberto 111-111-1111
3 Miguel 111-111-1111
合并的数据库必须是这样的:
id name Country Email Phone
---------------------------------------------------------------------
1 Franz Germany franz@gmail.com 111-111-1111
2 Alberto Italy alberto@gmail.com 111-111-1111
3 Miguel Spain miguel@gmail.com 111-111-1111
答案 0 :(得分:0)
您可以尝试这样:
Select
Country.id,
Country.name,
Country.country,
email.Email,
phoneno.phone
FROM
Country
INNER JOIN email ON (Country.id = email.id)
INNER JOIN phoneno ON (Country.id = phoneno.id)
答案 1 :(得分:0)
创建表会复制数据;只有在需要创建数据快照时才有意义。 要始终查看数据的当前状态,请使用视图:
repaint()
即使缺少某些电子邮件或电话号码,使用outer join也会返回行。 如果一个国家/地区行有多个电子邮件或电话号码,您将获得重复的国家/地区数据。
答案 2 :(得分:-1)
尝试选择所需的列。您可以从多个表中获取 例如,
SELECT id, name, email, phone FROM table1, table2, table3