MariaDB ВЫБРАТЬ несколько строк как один ряд - PullRequest
0 голосов
/ 11 июня 2019

Как мне SELECT несколько строк с одинаковыми данными (одной и той же таблицей) как одна строка?

Вариант использования: я создаю инструмент управления контактами. У некоторых людей может быть несколько адресов электронной почты и / или телефонных номеров. Вместо того, чтобы вручную добавить еще одну LEFT JOIN и вернуть что-то вроде следующего:

//print_r($row1);
//email1, email2, email3, email4, phone1, phone2, phone3, phone4

Я бы предпочел, чтобы MariaDB возвращал что-то визуально в соответствии со следующим:

//print_r($row1);
//email, phone

//print_r($row1['email']);
//1@example.com,2@example.com,3@example.com

//print_r($row1['phone']);
//123-4567,456-7890,109-345

Это позволило бы мне избежать статических JOIN с. Как это можно сделать с помощью MariaDB?


Отличным примером является функция STUFF SQL Server .

1 Ответ

1 голос
/ 11 июня 2019

Мне нужна была функция group_concat().

До

SELECT phone FROM contacts_phone;
  • 123
  • 456
  • 789

* После 1018 *

SELECT group_concat(phone) FROM contacts_phone;
  • 123456789
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...