我想追加多个MYSQL数据库字段的内容,以便以逗号分隔。
$customer_email = db_unqq($customer_row['email']);
但我有5个不同电子邮件的字段。理想情况下$customer_email
将是
$customer_email =
(
db_unqq($customer_row['email1']);
db_unqq($customer_row['email2']);
db_unqq($customer_row['email3']);
db_unqq($customer_row['email4']);
db_unqq($customer_row['email5']);
)
但每个用逗号分隔(因此可以将它们作为电子邮件发送)
答案 0 :(得分:3)
您可以使用group_concat()
在服务器上执行此操作,但这是特定于MySQL的行为,默认情况下长度限制为1024个字符。
SELECT ..., GROUP_CONCAT(email)
FROM ...
WHERE ...
GROUP BY userID
这假定电子邮件存储在您正在加入的单独表格中。
答案 1 :(得分:0)
我认为你的电子邮件在一个表格中,正如你所说的多个字段。 他们真的应该在一个单独的表中。这将允许Marc B的回答 上班。您还可以将CONCAT_WS与当前架构一起使用。
Select CONCAT_WS(',', email1, email2, etc..)
FROM...
WHERE ...
我仍然建议您使用单独的表为您提供更大的灵活性,使您可以更轻松地在代码中处理它而无需使用自定义sql函数