我想追加多个MYSQL DB字段的内容,以便它们是逗号分隔的。
$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']);
)但是要用逗号分隔它们(这样它们就可以作为电子邮件发送)
发布于 2011-05-25 03:23:02
您可以使用group_concat()在服务器上执行此操作,但这是MySQL特有的行为,默认情况下长度限制为1024个字符。
SELECT ..., GROUP_CONCAT(email)
FROM ...
WHERE ...
GROUP BY userID但是,这里假设电子邮件存储在您要加入的单独的表中。
发布于 2011-05-25 03:28:40
我认为您的电子邮件在一个表中,正如您所说的多个字段。它们真的应该放在一个单独的表中。这将允许Marc B的答案起作用。您还可以将CONCAT_WS与您当前的模式一起使用。
Select CONCAT_WS(',', email1, email2, etc..)
FROM...
WHERE ...我仍然建议您使用单独的表来提供更大的灵活性,使您可以更轻松地在代码中处理它,而无需求助于自定义sql函数
https://stackoverflow.com/questions/6115699
复制相似问题