合并样本数据库不起作用

时间:2016-11-26 09:43:59

标签: sql db2 ibm-data-studio

我在这里使用DB2的SAMPLE数据库。

我尝试使用coalesce来更改EMPLOYEE表的MIDINIT列中的空值,但在运行代码后仍然得到空值结果。

androidTestCompile 'com.android.support:support-annotations:23.1.0'
androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.1'
compile 'com.google.android.gms:play-services:7+'
compile 'com.android.support:appcompat-v7:23.4.0'

run result

1 个答案:

答案 0 :(得分:1)

你的错误是什么?

如果MIDINIT不是char或varchar(例如是整数),则coalesce用char值替换整数值,系统SQL cant选择类型

如果MIDINIT不是char或varchar,那么

SELECT COALESCE (cast(MIDINIT as varchar(200)), 'XX') AS MIDINIT
FROM EMPLOYEE;

或MIDINIT是数字

SELECT COALESCE (MIDINIT, 0) AS MIDINIT
FROM EMPLOYEE;

如果需要,可以使用ifnull函数替换coalesce(如果MIDINIT是char或varchar):

SELECT ifnull(MIDINIT, 'XX') AS MIDINIT
FROM EMPLOYEE;