Mysql从多个表中选择

时间:2011-09-02 13:34:22

标签: php mysql joomla

SELECT * FROM dog WHERE (SELECT calluser FROM jos_users WHERE `user_id`='".$cid."')=Subcode

$cidjos_users中的标识符,它告诉我们哪些用户正在获取有关

的数据

我想要获取的数据在“dog”中,而calluser是两者之间的标识符(告诉我们谁的狗是谁)

我需要能够只调用与相关用户相关的狗,但它也必须在一个查询中执行。有人可以帮忙吗?非常感谢。

2 个答案:

答案 0 :(得分:1)

如果我说得对(并且dog-table中的id列链接到jos_user-table中的calluser列),查询应该是

SELECT d.* FROM dog AS d JOIN jos_user AS u ON d.id = u.calluser WHERE u.user_id = '$cid'

如果没有,请更详细地解释您的数据结构(也许是小型ER图)。

答案 1 :(得分:1)

您需要使用联接 阅读本教程:http://www.tizag.com/mysqlTutorial/

您的查询应如下所示:

$cid = mysql_real_escape_string($_GET['cid']);
$query = "SELECT d.* FROM dog d
INNER JOIN jos_users ju ON (d.user_id = ju.id) 
WHERE ju.id = '$cid' ";