Mysql SQL表链接不能用于三个表
我想将三个不同的SQL表(用户、详细信息和系统)链接在一起,并使用此查询打印结果:Mysql SQL表链接不能用于三个表,mysql,sql-server,Mysql,Sql Server,我想将三个不同的SQL表(用户、详细信息和系统)链接在一起,并使用此查询打印结果: SELECT users.user_id, users.user_email, system.date, system.time, system.table_layout, details.party_size, details.children_no, details.diets, details.occassion, details.more FROM users, s
SELECT
users.user_id, users.user_email, system.date, system.time,
system.table_layout, details.party_size, details.children_no,
details.diets, details.occassion, details.more
FROM
users, system, details
WHERE
users.user_id = system.id = details.ID
ORDER BY
users.user_id
但是,它只正确地打印用户和系统信息,而没有正确地显示“详细信息”列—它只是重复其内部的一列。
如何将三个表成功链接在一起?因为目前只有两个连接最好使用显式连接
SELECT users.user_id, users.user_email, system.date, system.time, system.table_layout, details.party_size, details.children_no, details.diets, details.occassion, details.more
FROM users
Join system on users.user_id = system.id
Join details on system.id = details.ID
ORDER BY users.user_id
也许您对ID命名的选择令人困惑(不清楚是否
system.id
和details.id
都是指用户。用户id
或不是),但看起来您没有在右键上加入表
为了联接(链接)表,每个表都需要一个私钥(id)和一个外键(要联接的表的id)
假设您的表具有以下架构:用户(id,电子邮件等)
系统(id、用户id、日期、时间、表格布局)
详细信息(id、用户id、、聚会规模、饮食等) 你可以加入他们
SELECT *
FROM users, system, details
WHERE users.id = system.user_id AND users.id = details.user_id
ORDER BY users.user_id;
或者像John Cappelletti建议的那样使用内部连接:
SELECT *
FROM users
JOIN system ON users.id = system.user_id
JOIN details ON users.id = details.user_id
WHERE users.id = system.user_id AND users.id = details.user_id
ORDER BY users.user_id;
非常感谢你,传奇人物@我很高兴这有帮助。谢谢你的笑容。再次你好,@john cappelletti,我有一个新的问题。我意识到,如果没有链接列,一个用户无法链接到多个详细信息和系统列中的数据,因此我在两个表中创建了“customer_id”来链接它们,然后我将其包含在新的编码中。但是,如果用户在其他两列中有多个数据,SQL将重复它两倍的次数。如何解决此问题?以下是我的编码:选择不同的用户。用户id,用户。用户电子邮件,system.date,system.time,system.table\u布局,details.party\u大小,details.children\u no,details.diets,details.Occasion,details.more FROM users Join system on users.user\u id=system.customer\u id Join details on system.customer\u id=details.customer\u id ORDER BY users.user_id@aei有点硬,没有视觉效果。更新后的查询看起来非常有效。也许您可以帮助我解决我的新问题:我建议您通读有关关系数据库设计的以下脚本: