症状、原因、解決策が満たされていないため、空です。長い説明テーブルから取得した ldtext 列をテキストに置き換えたいと考えています。レポートにテキストを含む null 列を表示したい。
ありがとうございました
列の null 値を置き換えるには、COALESCE()
function を使用します。DB2 固有のソリューションでは、IFNULL()
関数を使用します。
SELECT COALESCE(columnName,'Some Text')
また
SELECT IFNULL(columnName,'Some Text'
SELECT b.ticketid,(SELECT COALESCE(CAST(SYMPTOM.LDTEXT AS VARCHAR(1000),'text')
FROM MAXIMO.LONGDESCRIPTION SYMPTOM
WHERE SYMPTOM.LDOWNERCOL = 'PROBLEMCODE'
AND SYMPTOM.LDOWNERTABLE = 'TICKET'
AND SYMPTOM.LDKEY = B.TICKETUID) AS "symptom"
FROM incident b
上記のクエリからは機能しません
SELECT b.ticketid, COALESCE(SELECT CAST(SYMPTOM.LDTEXT AS VARCHAR(1000))
FROM MAXIMO.LONGDESCRIPTION SYMPTOM
WHERE SYMPTOM.LDOWNERCOL = 'PROBLEMCODE'
AND SYMPTOM.LDOWNERTABLE = 'TICKET'
AND SYMPTOM.LDKEY = B.TICKETUID), 'some text') AS "symptom"
FROM incident b
上記のように動作します