Задавайте вопросы, мы ответим
Вы не зашли.
Добрый день столкнулся с проблемой. Не как не получается составить запрос. Задача такова имеется 2 таблицы:
drop table phone;
drop table personal;
create table personal(
id_personal tinyint primary key,
fio varchar(30) not null,
email varchar(30) not null,
doljnost varchar(20) not null);
create table phone(
id_phone tinyint ,
id_pers tinyint default NULL,
phone_num varchar(20) not null,
primary key(id_phone),
foreign key(id_pers) references personal(id_personal)) ;
insert into personal (id_personal,fio,email,doljnost )
value
(1,'Vasya Pupkin','vasya@email.com','meneger'),
(2,'petya Pupkin','petya@email.com','Operator'),
(3,'kolya Pupkin','kolya@email.com','Operator'),
(4,'sasha Pupkin','sasha@email.com','Operator'),
(5,'masha Pupkin','masha@email.com','Administrator'),
(6,'nikonor Pupkin','nikonor@email.com','Administrator'),
(7,'efinov Pupkin','efinov@email.com','Administrator'),
(8,'petrosyan Pupkin','petrosyan@email.com','Accountant'),
(9,'grigoryan Pupkin','grigoryan@email.com','Accountant'),
(10,'viktor Pupkin','viktor@email.com','Accountant');
insert into phone(id_phone,id_pers,phone_num)
value
(1,1,'(844) 844-1392'),
(2,2,'(855) 159-4476'),
(3,6,'(844) 541-8285'),
(4,6,'(855) 919-2386'),
(5,7,'(855) 313-7069'),
(6,8,'(855) 186-6520'),
(7,2,'(855) 619-9051'),
(8,3,'(811) 611-0083'),
(9,10,'(844) 070-1392'),
(10,NULL,'(833) 891-4216');
Нужно вывести таблицу которая содержала бы такие колонки как : Сотрудник Должность Номер телефона. Если номера телефона нету просто выводим пустую ячейку. Если присмотреться в то как заполнена таблицы с номерами телефонов то можно заметить что есть сотрудники за которыми числиться 2 номера. Так вот нужно эти оба номера вывести в одну ячейку напротив имени сотрудника используя как я понимаю
SELECT
t.fio,t1.phone_num
from personal t
left join phone t1 on(t1.id_pers=t.id_personal)
GROUP BY
t.id_personal
Но вот как составить запрос что бы были показаны оба номера в одной ячейки... Напротив имени сотрудника которому принадлежат эти номера. Я так и не пришел к решению...
Неактивен
То, что Вы ищете, называется GROUP_CONCAT.
Неактивен
Большое спасибо оказывается всё так просто.
Неактивен