我可以這樣做嗎?SQL,PHP,我可以在另一個查詢中使用mysqli_query的結果嗎?
$query = "SELECT * FROM my_table";
$results = mysqli_query($db, $query)
$query = "SELECT name FROM $results";
$results = mysqli_query($db, $query)
任何幫助非常感謝!
我可以這樣做嗎?SQL,PHP,我可以在另一個查詢中使用mysqli_query的結果嗎?
$query = "SELECT * FROM my_table";
$results = mysqli_query($db, $query)
$query = "SELECT name FROM $results";
$results = mysqli_query($db, $query)
任何幫助非常感謝!
號對於非常複雜的查詢,您可以使用臨時表:
CREATE TEMPORARY TABLE tmp SELECT * FROM my_table;
SELECT name FROM tmp;
但它會導致很大的開銷爲MySQL服務器。
在您的查詢,您是從本錄取結果:
$query = "SELECT * FROM my_table";
然後試圖做到這一點:
$query = "SELECT name FROM $results";
我能想到的兩件事情,你真的想這樣做。第一個是微不足道的:
$query = "SELECT name FROM my_table";
第二個是你想從第一個查詢中獲取表名並在第二個查詢中使用它。你可以這樣做,假設第一個查詢返回一行和一列。或者第二個是在一個循環內,你只是簡化了代碼。
您可以這樣做,因爲您正在構建通過應用程序形成查詢的字符串。您不能在基本的SQL中執行此操作,因爲無法動態創建表名稱和列名稱。他們可以使用prepare
語句,這相當於在php中構建字符串。
你爲什麼不試試? – Grant
我得到了:類mysqli_result的對象無法轉換爲字符串 – user3241112
「SELECT name FROM my_table」不行嗎? – Grant