Я пытаюсь напечатать все правила для всех заявителей, которые соответствуют следующему ID (626, 1985, 2511).Объединение в SQL Server 2008
Он печатает заявки, у которых есть 626 в качестве первого правила, но не печатает те, которые имеют только 1985 и 2511 и не 626). Есть идеи?
select DISTINCT AD1.AppID,
MAX(CASE WHEN (APDR1.SETTINGID= 626) THEN APDR1.reviewruletext ELSE ' ' END)AS 'Rule1',
MAX(CASE WHEN (APDR2.SETTINGID= 1985)THEN APDR2.reviewruletext ELSE ' ' END)AS 'Rule2',
MAX(CASE WHEN (APDR8.SETTINGID= 2511) THEN APDR8.reviewruletext ELSE ' ' END)AS 'Rule8'
from appdetail ad1
LEFT OUTER JOIN AppPartyDetailRule APDR1 on
apdr1.AppID=ad1.AppID AND
apdr1.AppDetailID= ad1.AppDetailID and
apdr1.AppDetailSavePointID= AD1.AppDetailSavePointID AND
ad1.AppDetailSavePointID=0 AND
APDR1.SettingID= 626
LEFT OUTER JOIN AppPartyDetailRule APDR2on
ad1.appid= apdr2.appid and
ad1.appdetailID= apdr2.appdetailID and
ad1.appdetailsavepointid= apdr2.appdetailsavepointid and
ad1.appdetailsavepointid= 0 AND
APDR2.SettingID= 1985
LEFT OUTER JOIN AppPartyDetailRule APDR8 on
ad1.appid= apdr8.appid and
ad1.appdetailID= apdr8.appdetailID and
ad1.appdetailsavepointid= apdr8.appdetailsavepointid and
ad1.appdetailsavepointid= 0 AND
APDR8.SettingID= 2511
group by AD1.AppID,.... etc. (more fields)
таблица структура:
AppID, AppDetailID, AppDetailsavepointID составляют первичный ключ в AD1 таблице, которая связана с APDR несколько раз, используя PK выше, и каждый раз, когда он извлечь различное значение для settingID.
Желаемая Выход: AppID правило обзор text1, правило обзор text2, правило текст отзыва 8
обзор Правило Текст1 представляют 626, 2 является 1985 и 8 является 2511 и каждый представляет определенный править
Какие таблицы участвуют и КН у них их структуры? Как они связаны? Как должен выглядеть конечный результат? – Oded
Привет, пожалуйста, см. Замечания добавлены к вопросу. – Joe