Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Выборка из трех таблиц MS SQL 2012  [new]
sargsarmen
Member

Откуда:
Сообщений: 3
Есть 3 таблицы departments, employees, registr

Картинка с другого сайта.
Картинка с другого сайта.
Картинка с другого сайта.

нужно получить таблицу вот так

empid, fname, lname, depid1, name1 и если в таблице registr есть вторая строка depid2, name2
(в таблице registr строк одинаковыми empid может быть максимум два)

К сообщению приложен файл. Размер - 30Kb
9 мар 14, 20:23    [15696354]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из трех таблиц MS SQL 2012  [new]
sargsarmen
Member

Откуда:
Сообщений: 3
Есть 3 таблицы departments, employees, registr

Картинка с другого сайта.
Картинка с другого сайта.
Картинка с другого сайта.

нужно получить таблицу вот так

empid, fname, lname, depid1, name1 и если в таблице registr есть вторая строка depid2, name2
(в таблице registr строк одинаковыми empid может быть максимум два)
9 мар 14, 20:35    [15696414]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из трех таблиц MS SQL 2012  [new]
Glory
Member

Откуда:
Сообщений: 104751
И что вы попробовали ? И что у вас не получилось ?
10 мар 14, 10:12    [15698176]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из трех таблиц MS SQL 2012  [new]
AHAPXuCT
Member

Откуда:
Сообщений: 44
sargsarmen,

Лови идею ...
Дарю ...

Таблица T_Contact_Type
id_Contact_Type    text_Value

1                       Адрес
2                       E-Mail
3                       Skype-login
4                       ICQ
5                       Mobile Phone
....


Таблица T_Contact
id_Row    id_Employee     id_Contact_Type     text_Value

1               123               1                           ул. Шаумяна, 12
2               123               1                           ул. Погосяна, 456
3               123               2                           vasya123@gmail.com
4               123               2                           vasya123@mail.ru 
5               456               4                          123-456-789
...
10 мар 14, 10:47    [15698227]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из трех таблиц MS SQL 2012  [new]
sargsarmen
Member

Откуда:
Сообщений: 3
AHAPXuCT, спасибо.
Но вы не поняли что мне нужна

В таблице registr у каждого empid может быть максимум 2 depid так вот, мне нужно получить вот такую строку:

empid,fname,lname,depid,name и если в таблице registr есть вторая строка с empid то depid, name
10 мар 14, 15:15    [15699135]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из трех таблиц MS SQL 2012  [new]
AHAPXuCT
Member

Откуда:
Сообщений: 44
sargsarmen
Но вы не поняли что мне нужна


Во-первых я даже и не пытался понять (для этого нужно иметь хрустальный шар).
Во-вторых я просто хотел намекнуть, что структура вашей БД далеко не идеальна и хранить контактные данные персон, так, как это у вас в таблице, может быть не совсем рационально (например, персона может иметь более одного телефона / EMail-a / квартиры / и т.д.)
10 мар 14, 15:48    [15699219]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из трех таблиц MS SQL 2012  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 9184
sargsarmen, так свяжите первую таблицу со второй через третью два раза и исключите совпадающие ID во втором случае. Проблема в чем состоит?
11 мар 14, 12:01    [15703291]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить