我们假设我有一个字段col2,其值为caSEINseNSItiVe。在下面运行此查询不会给我col2 = CD。我试过像LIKE和LIK BINARY。
SELECT col1,
CASE
WHEN col2 = 'CASEINSENSITIVE' THEN 'CD'
ELSE col2
END
FROM Table COLLATE utf8_general_ci
该表的排序规则设置为utf8_bin。我无法更改设置。我需要在创建报告时切换到utf8_general_ci,同时保持utf8_bin为默认值。
有什么建议吗?
答案 0 :(得分:0)
使用像这样的UPPER或LOWER功能:
SELECT col1,
CASE
WHEN UPPER(col2) = 'CASEINSENSITIVE' THEN 'CD'
WHEN UPPER(col2) = 'ANYUPPERTEXT' THEN 'UP'
WHEN LOWER(col2) = 'somelowertext' THEN 'LW'
WHEN UPPER(col2) = UPPER('anytext that will also be UPPERed') THEN '??'
ELSE col2
END
FROM Table