在PHP 中同時執行多個MySQL 查詢
一次嘗試執行多個查詢可以提高PHP/MYSQL 應用程式的效率並最佳化性能。考慮以下兩個您可能想要同時執行的查詢:
SELECT SQL_CALC_FOUND_ROWS Id, Name FROM my_table WHERE Name LIKE '%prashant%' LIMIT 0, 10; SELECT FOUND_ROWS();
處理查詢結果
雖然PHP 中的mysql-api 不直接支援執行多個在單一語句中進行查詢時,您可以使用替代方法來實現這一點。一種方法是利用 mysqli 擴充:
$mysqli = new mysqli("localhost", "user", "password", "database_name"); $mysqli->multi_query("SELECT SQL_CALC_FOUND_ROWS Id, Name FROM my_table WHERE Name LIKE '%prashant%' LIMIT 0, 10; SELECT FOUND_ROWS();"); do { if ($res = $mysqli->use_result()) { while ($row = $res->fetch_array()) { // Handle query 1 results } $res->free(); } if ($mysqli->errno) { break; } } while ($mysqli->more_results());
此方法可讓您使用 use_result() 方法來檢索各個查詢的結果。或者,您可以使用 store_result() 方法將所有結果儲存在單一緩衝區中並稍後存取它們。
其他注意事項
值得注意的是,使用 mysql_ - 函數類別已棄用,首選方法是使用 PDO(PHP 資料物件)。 PDO 提供了一個更標準化和安全的與資料庫互動的介面。
結論
透過使用上面概述的方法,您可以在一次嘗試中有效地執行多個 MySQL 查詢在 PHP/MYSQL 中。這可以提高效率並簡化程式碼,特別是在處理互連的查詢或需要從多個表中立即獲得結果時。
以上是如何在 PHP 中同時執行多個 MySQL 查詢?的詳細內容。更多資訊請關注PHP中文網其他相關文章!