как разбить два столбца на две строки по id
select
case_id,
a.id_police,
c.sign_date,
d.sign_date as sign_date2,
d.id_condition,
e.id_condition as id_condition2
--occurr_date,
--row_number() over (partition by a.id_police order by d.sign_date desc) as nums,
--dateadd("yyyy", 0, getdate()) as ourDate
from loss.tbl_Insurance_Cases a
join loss.tbl_Occurrences b on a.occurr_id = b.occurr_id
join tbl_policies c on a.id_police = c.id_police
left join tbl_Agreements d on a.id_police = d.id_police
join tbl_InsuranceConditions e on c.id_conditions = e.id_condition
[1]: https://i.stack.imgur.com/OT0rw.png
Ответы (2 шт):
Автор решения: Виктор Карев
→ Ссылка
Используйте UNION. Один раз берите одну колонку, второй - другую.
select
case_id,
a.id_police,
c.sign_date,
d.sign_date as sign_date2,
d.id_condition,
from loss.tbl_Insurance_Cases a
join loss.tbl_Occurrences b on a.occurr_id = b.occurr_id
join tbl_policies c on a.id_police = c.id_police
left join tbl_Agreements d on a.id_police = d.id_police
union
select
case_id,
a.id_police,
c.sign_date,
d.sign_date as sign_date2,
e.id_condition,
from loss.tbl_Insurance_Cases a
join loss.tbl_Occurrences b on a.occurr_id = b.occurr_id
join tbl_policies c on a.id_police = c.id_police
left join tbl_Agreements d on a.id_police = d.id_police
join tbl_InsuranceConditions e on c.id_conditions = e.id_condition
Автор решения: pegoopik
→ Ссылка
Уточните СУБД, которую используете. А так по классике можно примерно так:
select
case_id,
a.id_police,
c.sign_date,
d.sign_date as sign_date2,
case
when Tp.tp = 1
then d.id_condition
else e.id_condition
end as id_condition
from loss.tbl_Insurance_Cases a
join loss.tbl_Occurrences b on a.occurr_id = b.occurr_id
join tbl_policies c on a.id_police = c.id_police
left join tbl_Agreements d on a.id_police = d.id_police
join tbl_InsuranceConditions e on c.id_conditions = e.id_condition
cross join (select 1 as tp union all select 2)as Tp(tp)
Суть в том что соединяем со сгенерированной табличкой с двумя строками (1),(2) - а потом в зависимости от значения выбираем нужный Ид