我想查找来自“mytable”的所有记录。在现场'名称'仅使用下列字符:
Ø-*³`!/-;$€"“- „”\ø,Ø:’.#*+_/? !œ³¥Φ?+@=–()<>ąĄćĆęĘłŁńŃóÓśŚż ŻźŹàáâåéÉêéíıñçãėÊèÈçßœŒæğîïİşúūýōòÒô
此查询不起作用:
SELECT name
FROM mytable
WHERE name not regexp '[^a-zA-Z0-9Ø-*³`!/-;$€"“- „”\ø,Ø:’.#*+_/? !œ³¥Φ?+@=–()<>ąĄćĆęĘłŁńŃóÓśŚż ŻźŹàáâåéÉêéíıñçãėÊèÈçßœŒæğîïİşúūýōòÒô]'
我知道这个解决方案远非好:)但我尝试了不同的方法 - 这个方法返回最接近所需的结果。你能给我一些提示吗?
答案 0 :(得分:2)
您可以利用角色类。
例如,代替[ąĄóÓōòÒô...]
使用[[=A-Za-z=]]
。
这将匹配a
到z
igoring case中的任何字母,并忽略该字母是否有重音。
检查与您缺少的字符匹配的documentation for additional characters classes。