Üç olası sonucu olan bir CASE deyimine dayalı bir değer döndüren bir SQL deyimi yazmak istiyorum.CASE deyimi true olduğunda başka bir tablonun değerini döndürmek için SQL
1) sütun değeri sütun 'L0' ile başlar, o zaman tablo
2) iki sütun bir birleştirme döner 'C0' ile başlayan, sonra bir sütun (_PARENT_PROJECT_NUMBER değeri alır) o satırda ve bu değerin başka bir tabloda bulunup bulunmadığına bakın. Değilse, _PARENT_PROJECT_NUMBER değerini döndürün.
3) _PARENT_PROJECT_NUMBER, diğer tabloda yer alıyorsa, diğer tabloda "Rollup_Project_Mapping" sütununda "Rollup_Project" sütununda değeri döndürün.
Aşağıda yazdığım bildirimde, satır 12, "Rollup_Project_Mapping"."Rollup_Project"
dışında başka bir tabloda, _PARENT_PROJECT_NUMBER diğer tabloda bulunursa diğer tablonun değerini döndürmesini istemiyorum.
ERROR: syntax error at or near "FROM"
LINE 12: FROM "Rollup_Project_Mapping"."Rollup_Project"
kimse CASE ifadesinde bu kısmının doğru olduğunda diğer tablodaki değeri döndürmek nasıl biliyor mu: Hata iletisi?
SELECT
CASE
WHEN LEFT("_PROJECT_NUMBER",2)='C0' THEN
'('||"_PROJECT_NUMBER"||') '||"_PROJECT_DESCRIPTION"
WHEN LEFT("_PROJECT_NUMBER",2)='L0' THEN
CASE
WHEN (SELECT "Rollup_Project" FROM "Project_Rollup_Mapping" WHERE "PA_ACCOUNTED_TEST"."_PARENT_PROJECT_NUMBER" = "Project_Rollup_Mapping"."Project") IS NOT NULL THEN
"Rollup_Project_Mapping"."Rollup_Project"
ELSE "_PARENT_PROJECT_NUMBER"
END
END AS Rollup_Project2
FROM "PA_ACCOUNTED_TEST";
Teşekkürler! Mükemmel çalıştı! – christopheralan88