本文介紹了帶有 SET 變量語句的 Mysqli 查詢(即多個查詢)的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!
問題描述
我想設置一個變量以在 mysqli 查詢中使用.這不太行.在 mysqli 之前,我曾經設置查詢調用.我玩 db->multi_query($sql) 沒有運氣.任何人都知道如何使這項工作包括 set 語句?
I want to set a variable to use in a mysqli query. This doesn't quite work. Prior to mysqli I used to set query calls. I played around with db->multi_query($sql) with no luck. Anyone out there have an idea how to make this work including a set statement?
$sql = 'SET @rownum := 0;';
$sql .= 'SELECT @rownum :=@rownum + 1 AS Rank, User_Id, COUNT(User_ID) AS Block_Count
FROM Block_Owners;
$stmt = $db->prepare($sql);
$stmt->bind_param('ii', $world, $userId);
// execute the query
$stmt->execute();
推薦答案
在兩個單獨的查詢中進行:
Do it in two separate queries:
$db->query('SET @rownum := 0');
$sql = 'SELECT @rownum :=@rownum + 1 AS Rank, User_Id, COUNT(User_ID) AS Block_Count FROM Block_Owners'
$stmt = $db->prepare($sql);
$stmt->bind_param('ii', $world, $userId);
$stmt->execute();
但是請注意,您要運行的查詢將始終返回單行(Rank = 1
),因為您使用的是沒有 GROUP BY
的聚合函數.
Note, however, that the query you want to run will always return a single row (with Rank = 1
) since you are using an aggregate function without GROUP BY
.
這篇關于帶有 SET 變量語句的 Mysqli 查詢(即多個查詢)的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!
【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!