Я хотел бы создать представление с двумя новыми столбцами как SC и NC.Могу ли я использовать ключевое слово «AS» в Case Case
Я хочу написать логику, которая сравнивает страну1 и страну-поставщика, если она совпадает, то я хочу сравнить MOQ. Если совпадений, то я хочу, чтобы стоимость соответствующего MOQ хранилась в представлении как NC, SC
Является ли этот оценка хорошим для этого.
Существует не более 3 стран, 5 моков, 3 страны-поставщика, 3 поставщика MOQ.
create view viewCountry as
select dbo.SCN_Vw_ProjectDetailsReport_Revision.*,'' as SC, '' as NC,
case
when
country1=supplier_country1
then
(
case
when
lot_size=negotiated_lot_size then lot_size1_1 as SC, Negotiated_cost as NC
when
moq2=negotiated_lot_size then lot_size2_1 as SC, Negotiated_cost as NC
when
moq3=negotiated_lot_size then lot_size5_1 as SC, Negotiated_cost as NC
when
moq4=negotiated_lot_size then lot_size10_1 as SC, Negotiated_cost as NC
when
moq5=negotiated_lot_size then lot_size25_1 as SC, Negotiated_cost as NC
else NULL as SC, NULL as NC
) end as SC,NC
when
country1=supplier_country2
then
(
case
when
lot_size=negotiated_lot_size2 then lot_size1_1 as SC, Negotiated_cost2 as NC
when
moq2=negotiated_lot_size2 then lot_size2_1 as SC, Negotiated_cost2 as NC
when
moq3=negotiated_lot_size2 then lot_size5_1 as SC, Negotiated_cost2 as NC
when
moq4=negotiated_lot_size2 then lot_size10_1 as SC, Negotiated_cost2 as NC
when
moq5=negotiated_lot_size2 then lot_size25_1 as SC, Negotiated_cost2 as NC
else NULL as SC, NULL as NC
)
when
country3=supplier_country3
then
(
case
when
lot_size=negotiated_lot_size3 then lot_size1_1 as SC, Negotiated_cost3 as NC
when
moq2=negotiated_lot_size3 then lot_size2_1 as SC, Negotiated_cost3 as NC
when
moq3=negotiated_lot_size3 then lot_size5_1 as SC, Negotiated_cost3 as NC
when
moq4=negotiated_lot_size3 then lot_size10_1 as SC, Negotiated_cost3 as NC
when
moq5=negotiated_lot_size3 then lot_size25_1 as SC, Negotiated_cost3 as NC
else NULL as SC, NULL as NC
)
from SCN_Vw_ProjectDetailsReport_Revision
Ошибка: имена столбцов в каждом представлении или функции должны быть уникальными. Имя столбца «SC» в представлении или функция «viewCountry» указывается более одного раза. – Seeker
упс, код обновлен, забыли, это мнение. –
Я получаю несколько повторяющихся записей для каждой строки. Я получаю 3 записи для одного. Я перешел из Союза ALL в Союз – Seeker