如何在MySQL中链接两个表

时间:2013-01-22 02:39:54

标签: php mysql

我有两张表格如下:

表格-1-触点
 -id(主键,AUTO_INCREMENT)
 -firstname(VARCHAR)
 -lastname(varchar)
 -email(varchar)

表格-2-评论
 -id(主键,AUTO_INCREMENT)
 -fullname(varchar)
 -email(varchar)
  - 评论(文字)
 -date(VARCHAR)

我想编写php和MySQL查询来获取和写入将连接到联系人的评论。我想获得如下输出:

URL-contact.php?ID = 1个
名称contact1
comment-contact1很棒。

URL-contact.php?ID = 2
名称contact2
comment-contact2没问题。

我该怎么做?首先,我需要编写从该联系人页面进入时将连接到每个联系人的评论。其次,我需要在访问该联系人时获得该联系人的所有评论。

我感谢您的帮助。提前谢谢。

2 个答案:

答案 0 :(得分:1)

您应该设计数据库架构,以便两个表具有自然连接。例如每个评论都应该有一个contact_id,这是发布它的联系人的ID。然后你可以做像

这样的事情

从评论中选择*,其中comment.contact_id =(在此处插入contact_id)

您无法使用联系人姓名,因为如果两个联系人姓名相同怎么办? (例如,这种情况经常发生在Facebook上)

答案 1 :(得分:1)

假设您的表中已有数据,我能想象的最好的方法是根据电子邮件选择它。

要完成此操作,请执行SELECT电子邮件FROM contacts WHERE id ='id'。然后使用从那里返回,然后SELECT * FROM comments WHERE email ='email',以便检索所有相关的评论。

您唯一需要注意的是空电子邮件值,在这种情况下,您很可能需要使用Patashu建议的答案重新设计您的方法。