我有两个表,即States,Package_Details。以下是该表的详细信息。
国
Package_Details
现在我在构建SQL查询时遇到问题,该查询将选择并显示Package_Details中的记录,将sender_state和receiver_state替换为States表中相应的state_name。
答案 0 :(得分:5)
您需要加入。例如:
SELECT p.id, s1.state_name AS sender, s2.state_name AS receiver
FROM
package_details p
JOIN states s1 ON (p.sender_state = s1.state_id)
JOIN states s2 ON (p.receiver_state = s2.state_id)
注意如何在查询中使用states
两次,为其分配一个别名(states s1
)并使用别名来引用该表。
如果您需要经常加入,您可能希望创建一个视图。
MySQL关于联接的文档在这里:http://dev.mysql.com/doc/refman/5.0/en/join.html。有关创建视图的文档位于:http://dev.mysql.com/doc/refman/5.0/en/create-view.html。
答案 1 :(得分:1)