[英]Stick MYSQL query results into string separated by a comma
我要進行的第一個查詢是針對與用戶相關聯的所有ID:
$DBH = getDBH();
$stmt = $DBH->prepare("SELECT id FROM list WHERE user = ?");
$stmt->bind_param("s",$userid);
$stmt->execute();
$stmt->bind_result($ids);
$stmt->fetch();
$stmt->close();
當前存儲在表中的內容如下:
ID user
1 example
4 example
7 example
15 example
在查詢之前不知道ID,與用戶關聯的ID數量將不斷增長和縮小。
所以我的問題是如何查詢這些ID並將其粘貼到一個字符串中,每個ID都用逗號分隔
例如:1、4、7、15等,等等。
編輯:使用GROUP CONCAT()
$stmt = $DBH->prepare("SELECT GROUP_CONCAT(id) as id FROM list WHERE user = ? GROUP BY id");
$stmt->bind_param("s",$userid);
$stmt->execute();
$stmt->bind_result($id);
看一下group_concat()函數
請注意,字符串可以采用的最大長度由group_concat_max_len()變量指定,默認情況下為1024個字符。
您可以通過此查詢看到您的
show variables like 'group%'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.