
mysql 模糊查询转义字符问题解析
在 mysql 中进行模糊查询时,需要对特殊字符(例如 %)进行转义,以避免查询所有行。那么,在 go 中如何方便地转义这些特殊字符?
转义方法
go 标准库提供了 strings 包,其中包含 escapelike 函数,可用于转义模糊查询中的特殊字符。
示例代码
解析 MySQL 8.0 的 DDL 脚本,并将表结构导出为 Excel 格式。适用于用户需将 MySQL 的 `CREATE TABLE` 语句转换为结构化的 Excel 文件场景,导出内容包含字段名、数据类型、长度及精度等信息。支持多张表的批量处理,每张表对应 Excel 中的一个独立工作表。适用于数据库文档编写、数据字典生成及模式分析等任务。
query := escapeLike("%", "%", "%")通过 escapelike 函数,可将字符串中的 % 符号转义为 "%",以确保查询能够正确匹配包含 % 符号的行。
转义的其他字符
除了 % 符号外,在 mysql 模糊查询中还需要转义以下字符:
- _(下划线)
- (反斜杠)
官方文档参考
有关 escapelike 函数的官方文档,请参阅:
- https://github.com/go-gorm/gorm/blob/master/clause/clause.go#l66-l74

















