我有簡單的查詢,這是不工作:情況下,選擇另一列AS400查詢
SELECT BATCH_0002.CREATOR, BATCH_0002.GLEXR,
case when BATCH_0002.GLIVD >'0' THEN BATCH_0002.GLIVD ELSE BATCH_0002.date end
as tarih FROM BATCH_0002
錯誤是:
ERROR: [IBM][System i Access ODBC Driver][DB2 for i5/OS]SQL0581 - The results in a CASE expression are not compatible. Error Code: -581
,但是當我改變列名的東西比GLIVD
不同,它是工作。
SELECT BATCH_0002.CREATOR, BATCH_0002.GLEXR,
case when BATCH_0002.GLIVD >'0' THEN BATCH_0002.GLEXR ELSE BATCH_0002.date end
as tarih FROM BATCH_0002
我的病例陳述有什麼問題嗎?
你可以發佈'BATCH_0002'的表定義嗎? –
哪些數據類型是列GLIVD和GLEXR? – scaisEdge