2012-02-02 27 views
0

我有2个表,我必须使用得到一个表中的数据,其中=挑行,但WHERE语句条件是另一个表

users_info and users_frnds 

users_info look like this 

    name   image  presently  id 
somename  somimage   studying  2 
somename  somimage   studying  3 

users_frnds table looks like this 

    userid  friendid 
    1   2 
    1   3 

$query = "SELECT * FROM users_info WHERE users_info.id = 
users_frnds.friendid"; 

$result = mysql_query($query) or die(mysql_error()); 
while($row = mysql_fetch_array($result)){ 
echo $row['name']. " - ". $row['image']; 
echo "<br />"; 

“其它表这个值”,但它在这里似乎不起作用。我想一次把所有的数据存入我的数组中。 任何人都可以帮我this.Thanks

它抛出我这个错误

Unknown column 'users_frnds.friendid' in 'where clause' 
+0

您需要在语句的FROM部分添加users_frnds。 – Aurimas 2012-02-02 12:16:30

回答

1

您将需要加入,如:

SELECT specifyfields 
FROM users_friends 
    INNER JOIN users_info ON users_info.id=users_friends.friendid 

然后你会得到访问,尝试从未参加WHERE子句中的表,因为这可能会创建相当不可读的查询。