所以我有一个结构如下的数据库表......
NAME | PHONE | EMAIL1 | EMAIL2 | EMAIL3
这些将是我的列,想象这是该数据库中的一行..
John | 555-555-5555 | email1@website.com | email2@website.com | email3@website.com
我需要能够将这些条目转储到 CSV,我已经有可以工作的代码,但格式是问题。
我需要将每封电子邮件显示在一行中,并具有相应的名称和号码,格式如下...
John | 555-555-5555 | email1@website.com
John | 555-555-5555 | email2@website.com
John | 555-555-5555 | email3@website.com
我需要检索数千行并以这种方式显示它们,是否有某种方法使用 PHP while 循环可以以这种格式显示数据库表中的行?非常感谢任何帮助。
最佳答案
这个过程称为逆透视。
最常见的是在 MySQL 中使用 UNION ALL
完成。
SELECT
NAME
, PHONE
, EMAIL1
FROM
table
UNION ALL
SELECT
NAME
, PHONE
, EMAIL2
FROM
table
UNION ALL
SELECT
NAME
, PHONE
, EMAIL3
FROM
table
关于PHP MySQL 将多列转换为多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50420178/