Как выбрать только одно значение sql

у меня есть такая таблица

_______________
|id   |  Name | 
|1    | Joe   |
|2    | Mike  |



__________________________
|id   | Phone | contactID|
|1    | 1234  | 1        |
|2    | 5678  | 1        |
|3    | 9999  | 2        |
|4    | 8888  | 2        |
|5    | 7777  | 2        |

Мне нужно показать имя и номера телефонов каждого пользователя. Но теперь отображается только одно число. Как я могу сделать так, чтобы все телефонные номера отображались с отображением имени только один раз?

Который из? Случайный? Первый / последний по какому-то определенному порядку? А что вы пробовали до сих пор?

misorude 26.10.2018 09:10

Многие системы могут иметь несколько телефонных номеров одного человека, но обычно они идентифицируются по типу - домашний / мобильный / основной / аварийный и т. д. Это означает, что вы можете выбрать значащий номер для печати, когда вам нужно.

Nigel Ren 26.10.2018 09:19
8
2
96
1

Ответы 1

Table - User
_______________
|id   |  Name | 
|1    | Joe   |
|2    | Mike  |


Table - Contact
__________________________
|id   | Phone | contactID|
|1    | 1234  | 1        |
|2    | 5678  | 1        |
|3    | 9999  | 2        |
|4    | 8888  | 2        |
|5    | 7777  | 2        |

Сначала вам нужно запустить запрос mysql

SELECT u.Name, c.Phone FROM User u INNER JOIN Contact c ON c.contactID = u.id GROUP BY u.id;

Теперь вы сохраняете результат запроса mysql и запускаете цикл для печати каждого имени только одного номера телефона.

Другие вопросы по теме