У меня есть две таблицы Profile_Appointments и Profile.Несколько соединений в одной таблице
Каждая запись в таблице профилей имеет Profile_key и Profile_Type_Key в дополнение к другим данным профиля - фамилия, имя и т.д.
Rep нам иметь Profile_Type 4, клиентов имеют Profile_Type 6
PROFILE TABLE
Profile_Key Profile_Type_key First_Name Last_Name
1234 4 John Smith
8765 6 Mike Jones
таблица Profile_Appointment содержит две записи для каждого назначения один с РЭП в Profile_Key другой с Profile_Key клиента
Appointment_Key Profile_Key
10 1234
10 8765
Назначение_key относится к таблице Назначения.
мне нужно сделать запрос, который приводит к одной записи для каждого назначения и имеет как репутация и данные клиента из таблицы профиля
THE RESULT I WANT
Appointment_Key Profile_Key Rep Profile_Key Customer
10 1234 8765
Это запрос, который не работает ...
select appointment_key, p.profile_key as Rep, p2.profile_key as Customer, p.firs_name,p2.first_name from profile_appointment pa
join profile p
on p.profile_key = pa.profile_key
join profile p2
on p2.profile_key = pa.profile_key
where p.profile_type_key = '4' or p2.profile_type_key = '6'
Что я получаю:
Appointment_Key Rep Customer Rep Customer
10 1234 1234 John John
Я не могу понять, что я пропавшими без вести. Спасибо.
Вы, кажется, выбрав только по одной строке за раз от встречи с профилем, поэтому у вас будет только один Profile_Key для присоединения. – Ilion
Разве вы не выполнили бы ту же самую вещь, придерживающуюся только одной таблицы с тем же, где клаузула ??? –