[英]Mysqli multi query PHP
我想使用php mysqli函數來查詢:
SET @rownum = 0, @rank = 1, @prev_val = NULL;
SELECT @rownum := @rownum + 1 AS row,
@rank := IF(@prev_val!=score,@rownum,@rank) AS rank,
userid,
@prev_val := score AS score
FROM (
SELECT userid, sum(amount) as score
from leads WHERE date(time) >= '2013-08-15'
group by userid
) exodus_entries
ORDER BY rank asc LIMIT 0,100;
我嘗試使用mysqli_query(link,query); 功能,但是沒有運氣,有什么幫助嗎?
無需使用多重查詢,每當您使用多重查詢時,都會冒安全隱患 。
用戶變量@ rownum,@ rank,@ prev_val的值對於第二個查詢將保持有效,只要您在同一連接中運行兩個查詢即可。
因此,只需運行mysqli_query("SET ...");
然后運行mysqli_query("SELECT...");
分別。 這樣做要簡單得多,並且至少可以避免一種安全風險。
關於您的錯誤:
mysqli_fetch_row() expects parameter 1 to be mysqli_result, boolean given
始終檢查mysqli_query()的返回值。 如果有錯誤,它將返回false 。 當然,您不能運行mysqli_fetch_row(false);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.