Допустим, есть таблица «Люди» в самом примитивном виде:
+-----------+-------------+
| person_id | person_name |
+-----------+-------------+
|    1      | John Smith  |
|  .....    |    .....    |
Также есть некая таблица «Дополнительные данные», имеющая следующий вид:
+-----------+-----------+------------+
| person_id | data_type |    data    |
+-----------+-----------+------------+
|    1      |   e-mail  |  ab@сd.ru  |
|    1      |   e-mail  |  [email]ef@gh.ru[/email]  |
|    1      |   phone   |   12-34    |
|    1      |   phone   |   23-24    |
|    1      |   phone   |   14-41    |
|  .....    |   .....   |  .....     |
То есть в данную таблицу заносятся различные дополнительные параметры о людях, которые у них могут не быть, а могут и быть, при этом в неопределённом количестве. В принципе, это можно записать в одном поле в таблице «Люди» через запятую, но начальник хочет, чтобы под каждый экземпляр параметра было отдельное поле (на самом деле, есть и другие более сложные параметры для более сложных объектов – «Люди» приведены только в качестве примера).
Итак вопрос (спасибо всем, кто до него дочитал): можно ли одним select-ом получить что-нибудь типа
+-------------+--------------------+---------------------+
| person_name |      e-mail        |         phone       |
+-------------+--------------------+---------------------+
| John Smith  | [email]ab@cd.ru[/email], [email]ef@gh.ru[/email] | 12-34, 23-24, 14-41 |
или хотя бы:
+-------------+----------------------------+----------------------------+
| person_name |         ??????             |             ?????          |
+-------------+----------------------------+----------------------------+
| John Smith  | e-mail: [email]ab@cd.ru[/email], [email]ef@gh.ru[/email] | phone: 12-34, 23-24, 14-41 |
Я пока не представляю, как вписать в одну строку данные одной записи из таблицы X и нескольких записей таблицы Y.