Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Требуется подсказка/помощь / 9 сообщений из 9, страница 1 из 1
04.11.2018, 18:29
    #39727865
migistar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Требуется подсказка/помощь
Добрый день, прошу вас подсказать, или помочь с одной деталью.
Требуется объединить две таблицы 1.(person_ID,First_name,Last_name) и 2.(person_id,contact_person_id)
Выполняя следующий код, получаю связанные с ID ФИО, ID контактов, но нужно вывести также и ФИО для полученных ID

select per_all_people_f.person_id,last_name,first_name,middle_names,contact_person_id
FROM per_all_people_f LEFT JOIN per_contact_relationships
ON per_all_people_f.person_id = per_contact_relationships.person_id
where (effective_start_date<=sysdate and effective_end_date>sysdate) and (last_name = 'Никонова')
group by per_all_people_f.person_id, last_name, first_name, middle_names,contact_person_id
order by per_all_people_f.person_id

Вывод: 76317 Нико**** Лю*** Ивановна 62742
Где к ID 62742 требуется присвоить ФИО
...
Рейтинг: 0 / 0
04.11.2018, 18:48
    #39727869
wsxedc83
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Требуется подсказка/помощь
migistar,

А если сделать ещё один Left Join?
...
Рейтинг: 0 / 0
04.11.2018, 18:55
    #39727871
wsxedc83
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Требуется подсказка/помощь
migistar,

Вообще, я бы убрал все SELECT с условием, чтобы не JOINить к лишним полям выборки:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT Tab1.person_id, Tab1.last_name, Tab1.first_name, Tab1.middle_names, Tab2.contact_person_id, Tab3.last_name, Tab3.first_name, Tab3.middle_names
FROM 
(SELECT person_id, last_name, first_name, middle_names
FROM per_all_people_f 
where (effective_start_date<=sysdate and effective_end_date>sysdate) and (last_name = 'Никонова'))  Tab1
LEFT JOIN per_contact_relationships Tab2 ON Tab2.person_id = Tab1.person_id
LEFT JOIN per_all_people_f  Tab3 ON Tab3.person_id = Tab2.contact_person_id
group by Tab1.person_id, Tab1.last_name, Tab1.first_name, Tab1.middle_names, Tab2.contact_person_id, Tab3.last_name, Tab3.first_name, Tab3.middle_names
order by Tab1.person_id



Но я небольшой спец в sql. Может оно и не взлетит...
...
Рейтинг: 0 / 0
04.11.2018, 19:19
    #39727877
SY
SY
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Требуется подсказка/помощь
A зачем GROUP BY?

SY.
...
Рейтинг: 0 / 0
04.11.2018, 21:21
    #39727911
migistar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Требуется подсказка/помощь
wsxedc83, спасибо большое!! Всё получилось!)
...
Рейтинг: 0 / 0
05.11.2018, 00:55
    #39727972
wsxedc83
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Требуется подсказка/помощь
SYA зачем GROUP BY?

SY.

Ну может надо ему. Может так в учебнике написано...
...
Рейтинг: 0 / 0
05.11.2018, 09:31
    #39727993
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Требуется подсказка/помощь
wsxedc83Может так в учебнике написано...Ну и зачем ты встрял со своей медвежьей помощью в учебный процесс?
...
Рейтинг: 0 / 0
06.11.2018, 16:25
    #39728659
wsxedc83
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Требуется подсказка/помощь
ElicНу и зачем ты встрял со своей медвежьей помощью в учебный процесс?

Пусть на подсказках через учебу проползет - мне его рабочее место достанется когда его попрут.
...
Рейтинг: 0 / 0
06.11.2018, 17:01
    #39728696
-2-
-2-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Требуется подсказка/помощь
wsxedc83когда его попрутНе факт. Вон некий RMagistr много лет задает идиотские вопросы. Видимо за копипаст с форума что-то платят и не факт, что тебя эти деньги устроят.
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Требуется подсказка/помощь / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]