如果您的應用程序代碼中有一組記錄ID,那麼從數據庫中讀取記錄的最佳方法是什麼?從數據庫中有效地讀取多個記錄給定數組的記錄ID
$idNumsIWant = {2,4,5,7,9,23,56};
顯然遍歷每個ID是不好的,因爲你做ñ查詢:
foreach ($idNumsIWant as $memID) {
$DBinfo = mysql_fetch_assoc(mysql_query("SELECT * FROM members WHERE mem_id = '$memID'"));
echo "{$DBinfo['fname']}\n";
}
所以,也許最好是使用單一的查詢?
$sqlResult = mysql_query("SELECT * FROM members WHERE mem_id IN (".join(",",$idNumsIWant).")");
while ($DBinfo = mysql_fetch_assoc($sqlResult))
echo "{$DBinfo['fname']}\n";
但是,當數組有30,000個元素時,此方法縮放嗎?
你如何有效地解決這個問題?