mysql - 从 MySQL Select 字符串中删除 Cyrillic 文本
问题描述
最近我遇到了 MySQL 查询的一些问题。我有包含多种语言记录的表。例如,列是 ID 和描述。它有这样的数据 1 与 Кирилица 的测试; 2 不使用西里尔字母进行测试。我需要从 Select 查询中删除所有西里尔符号。选择答案必须类似于 1 test with;2 Test without Cyrillic。似乎我需要使用 Select Replace 查询,但是否可以比在查询中替换 66 个字符的标题字母和小写字母更快。我试过类似的东西。但这当然行不通。希望得到 MySQL 大师的帮助。感谢您的关注
SELECT id,SUBSTRING_INDEX(title, REGEXP "[а-яА-Я]", 1)
FROM Test
解决方案
AFAIK 没有比这更快的方法了
SELECT id, REGEXP_REPLACE(title, '[Ѐ-ӿ]+', '') AS title FROM test;
("Ѐ"
和"ӿ"
分别是 Unicode Cyrillic 块的第一个和最后一个字符。如果使用[а-яА-Я]
,您可能会错过俄语以外语言的西里尔字母,甚至是俄语 Ё。)
推荐阅读
- javascript - 如何使用 if else 语句在 javascript 对象中创建键
- c# - 附加到游戏对象时,粒子系统粉红色
- react-native - 如何在本机反应中访问导航选项中的组件状态?
- android - 使用 RecyclerView 中的自定义 ListUpdateCallback 和 PagedList
- css - 滚动条未显示在平板电脑上
- javascript - NodeJS在模块中的一些混合
- jquery - 检查多个输入值是否不为空
- apache-kafka - Kafka Streams - 如何有效地加入大型非分区存储/主题
- java - Netflix Atlas 在 Spring-Boot 2.0.1 应用程序开始时显示“未启用订阅”
- c# - 重构具有内部静态属性的结构