Выражение регистра не работает должным образом в запросе SQL
Я хочу объединить столбцыsupplier
таблицу с разделителем запятых и поместите его в поле псевдонима с именем «контакт». Я использовал случаи для проверки нулевых значений. Предположим, еслиcontact_number2
тогда нольcontact_number3
будет в поле псевдонима и наоборот. Вот мой запрос
SELECT supplier_Name, supplier_Address, supplier_reference, contact_Number1,
contact_number2, contact_number3,
(case when contact_number2 is null then contact_number3
when contact_number3 is null then contact_number2
when contact_number3 is null and contact_number2 is null then 0
-- when contact_number2 is not null and contact_number3 is not null then CONCAT(CONCAT(contact_number2,','), contact_number3)
end) as contact
FROM SUPPLIER
Если я использую четвертое условие, то оно работает, но если я использую несколько условий, то оно не работает. ОшибкаORA-00932: inconsistent datatypes: expected NUMBER got CHAR 00932. 00000 - "inconsistent datatypes: expected %s got %s"