问题描述
column1 column2
abcd abdc
abcr dfgh
cvge cbge
我想知道SQL查询以获取第三列,结果以这种方式显示2个字段之间的差异
column1 column2 calculated field
abcd abdc 2
abcr dfgh 0
cvge cbge 3
解决方法
如果字段始终是四个字符,则可以使用case
表达式。就像这样:
select ( (case when substr(field1,1,1) = substr(field2,1) then 1 else 0 end) +
(case when substr(field1,2,3,4,1) then 1 else 0 end)
) as calculated
请注意,所有数据库都支持substr()
的功能,但是在某些数据库中,该功能可能具有不同的名称。