簡體   English   中英

將MYSQL查詢結果粘貼到由逗號分隔的字符串中

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM