我有一个查询,它将比较WHERE
子句中的值。
问题是,我有时会用一些语言来强调。
因此,这句话不会是一样的,尽管它应该是。
例如,我把t_etab
放在桌子上:
1 | Collège
2 | Université
我想在t_etab
中找到这样的一行:
SELECT id_etab
from t_etab
where instr(UPPER('COLLEGE RANDOM '),UPPER(lib_etab)) > 0;
但这不会得到id 1
,因为lib_etab
将是COLLÈGE
,而不是COLLEGE
。
是否有一种忽略重音的方法,所以我的查询返回1?
编辑:正如相关问题中所说的,我们必须自己替换/翻译所有的字符.。
谢谢。
发布于 2014-07-28 04:47:06
与编辑这个答案相反,这里有一个更好的(面向甲骨文的)答案:
https://stackoverflow.com/a/1572781/3824902
您需要强制查询重音不敏感的排序规则。您还需要确保双方具有相同的排序规则,否则在运行其他比较时可能会返回进一步的错误。
SELECT id_etab
from t_etab
where instr collate Latin1_General_CI_AI Like
'%COLLEGE%' collate Latin1_general_CI_AI
https://stackoverflow.com/questions/24995468
复制相似问题