如何在变量或数组中的表之间传递大量值?

时间:2013-09-01 05:48:10

标签: php mysql arrays variables

我有两个SQL表。第一个结构很简单。

ID    Name
----------

第二个也很简单。

CommentID     Comment    CreatorID
----------------------------------

我想在我的网站上显示与用户" ID相对应的所有评论"

问题是我们这里有很多ID和两个不同的表。

这样的事情:

$1= $bdd->query("SELECT * FROM comments WHERE id_user=220281");
$2=$1->fetch();

但不可能,因为 id用户 不在 评论 表中。

3 个答案:

答案 0 :(得分:1)

最简单的方法是加入这样的表:

select
    users.name,
    comms.commentID,
    comms.comment
from
    userTable users
        join commentTable comms
            on users.ID=comms.ownersID
where
    users.id=1

这将返回每行数据中的用户名,但您不需要在输出中多次使用它。

听起来你可以在SQL查询上使用一些指针。做一个忙,have a read of this article I put together一会儿。

答案 1 :(得分:0)

一个简单的连接就可以做到这一点:

SELECT c.comment, u.user_name FROM 
    Users u 
JOIN
    Comments c ON 
    c.creator_id = u.user_id
WHERE 
    u.user_id=220281

小提琴:http://sqlfiddle.com/#!6/3b28a/1

答案 2 :(得分:0)

SELECT c.* 
  FROM comments c
 INNER JOIN users u ON c.id_creator = u.id_user AND 
                       u.id_user = 220281