2011-06-26 62 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