2011-06-26 64 views
0

嗨,我有从本地书店MySQL查询2表与数

$queryadmin ="SELECT last_name, first_name, user_id FROM users"; 
$recordz = @mysqli_query ($dbc, $queryadmin); 

while ($row = mysqli_fetch_array($recordz, MYSQLI_ASSOC)) { 
echo '<tr> 
<td align="left">' . $row['first_name'] . '</td> 
<td align="left">' . $row['last_name'] . '</td> 
<td align="left">' . $row['user_id'] . '</td> 
</tr>' 
;} 

以下查询/表现在我想从其中显示每个用户拥有借出的书码另一个表的附加列。 所以查询如果嵌套seperately会去像这样

$query2 = mysql_query("SELECT FROM mirror3 WHERE userid='".$row['user_id']."'", $link); 
$anzahl = mysql_num_rows($query2); 

将这个查询嵌套查询时内(右后启动时)从上面不起作用。怎么做?

提供的参数不是一个有效的MySQL 结果资源

感谢

+0

是否有意在帖子中的最后一条sql语句无效? – fyr

回答

1

您的查询是错误的。指定字段名:

$ QUERY2 =请求mysql_query( “选择 SOMETHING FROM mirror3其中userid = '” $行。[ 'USER_ID'] “”,$链接。');

+0

omg,你是对的。 OMG我可以做嵌套查询。即使这似乎只适用于像我这样的非专业人士:) – Email

1

你也许可以做到这一点在一个查询:

$query = mysqli_query('SELECT u.last_name, u.first_name, u.user_id, m.PUT_SOMETHING_HERE 
     FROM users u 
     LEFT JOIN mirror3 m ON u.user_id = m.userid 
     WHERE m.PUT_SOMETHING_HERE IS NOT NULL'); 

但Parkyprg有一点,你必须选择从第二个查询的东西。

+0

嗨。谢谢。我经常使用连接,但我不知道如何使用where子句对另一个查询进行计数。你可以在你的例子(m.PUT_SOMETHING_HERE)上添加吗?我看到的问题是第二个表的查询语句与第一个表完全不同。我使用mysql_num_rows – Email

+0

嗯...我想你可以做一些像'SELECT u.last_name,u.first_name,u.user_id,COUNT(m.PUT_SOMETHING_HERE)AS数FROM用户u LEFT JOIN mirror3 m ON u.user_id = m .userid WHERE m.PUT_SOMETHING_HERE不是NULL GROUP BY u.user_id'但这只是一个猜测。如果这不起作用,坚持你接受的解决方案 –

+0

thx,学到了新的+1 – Email