我在我的數據庫中有兩條記錄,我想將它們打印出來。 所以我wroted這樣的:MYSQL爲什麼While循環返回第一個記錄兩次?
<?php
$resDB = mysql_connect("localhost", "root", "");
mysql_select_db("xe", $resDB);
$aco = mysql_query("SELECT * FROM members WHERE member_id IN (SELECT member_id FROM pfields_content WHERE TRIM(field_12) IS NOT NULL) ");
while ($row = mysql_fetch_array($aco))
{
$query1 = mysql_query("SELECT member_id FROM pfields_content WHERE TRIM(field_12) IS NOT NULL LIMIT 1");
$memberID = mysql_fetch_row($query1);
echo $memberID[0];
echo '<br>';
}
?>
而不是兩個記錄(會員ID):
它打印出第一條記錄(會員ID)兩次:
有人可以幫我嗎?
你兩次運行完全相同的查詢和打印相同的值。 (除了使用結果數作爲循環和運行內部查詢的次數外,您從不會對外部查詢的結果做任何事情)。 – geoffspear
循環內部的DB查詢通常是一個非常糟糕的性能方面的想法。熟悉JOIN並瞭解如何通過一個查詢獲取所需的所有數據。 (具體取決於您的數據模型。) – CBroe