当前位置: 首页 > news >正文

mysql tidb like查询有换行符内容问题解决

问题解决记录

文章目录

  • 问题解决记录
  • 前言
    • 记录一次使用mysql、tidb存储带有换行符内容的模糊查询。
  • 一、问题现象
  • 二、使用步骤
    • 1.执行模糊查询语句
    • 2.问题解决
      • 2.1 mysql解决办法
      • 2.2 tidb解决办法
  • 总结


前言

记录一次使用mysql、tidb存储带有换行符内容的模糊查询。

一、问题现象

最近需要做一个需求,mysql的版本号为8.0,tidb版本号为8.0以上。数据库表的字段是text类型,需要存储的内容含有换行符引起的问题。下面我先建数据库重现下问题。

DROP TABLE IF EXISTS `test1`;
CREATE TABLE `test1`  (`id` int NOT NULL,`name` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL,PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;-- ----------------------------
-- Records of test1
-- ----------------------------
INSERT INTO `test1` VALUES (1, '123\r\n456\r\n78910');

在这里插入图片描述
现在已经插入好带换行的数据。

二、使用步骤

1.执行模糊查询语句

select *from test1 where name like concat('%','123\n','%');

在这里插入图片描述
可以看到直接模糊查询123\n是查询不到内容的,需要把sql改成\r\n才能查询到数据。
在这里插入图片描述

2.问题解决

2.1 mysql解决办法

java代码如下(示例):

    public static void main(String[] args) {// 例如输入是input 需要使用正则重新替换后再进行模糊查询String input ="xkjklfjl\njkjk\n";input = input.replaceAll("\n","\r\n");}
然后再进行查询语句如下即可查出数据。
like concat('%',input,'%');

2.2 tidb解决办法

tidb直接让前端如果校验到用户有换行,替换成\n
然后执行查询语句如下

然后再进行查询即可查出数据。
like concat('%',input,'%');

替换查询即可

总结

这里我只距离了mysql的存储方式,经过验证,mysql对于换行符的存储是 \r\n如果要模糊查询这些内容,需要替换成\r\n。如果是tidb就不用,直接是\n查询即可查出内容,感兴趣的朋友可以试试tidb的查询,这里就不举例了。

http://www.dtcms.com/a/597703.html

相关文章:

  • 【工具变量】上市公司是否获得ZF采购DID(2000-2025年)
  • 【AI学习-comfyUI学习-LCM lora八步生成 工作流-各个部分学习-第八节】
  • 转轮机加密(攻防世界)
  • 微信小程序实现长按复制选中文字的效果
  • SQL Server 驱动 和 TLS 版本不兼容 的问题
  • 【低空安全】低空无人机集群侦测与反制概述
  • 制作网站的原因是计算机网页制作工具
  • 机器学习聚类k均值簇数的调优方法
  • 批量格式化XML与JSON文件小工具
  • TensorFlow深度学习实战(41)——TensorFlow生态系统
  • 网站空格 教程宁波龙山建设有限公司网站
  • 4-ARM-PEG-COOH(2),多功能羧基PEG的结构特性与反应特点
  • 东昌府区网站建设公司铜川网站建设公司电话
  • 大模型如何处理不同格式的文档?
  • GCPC总决赛(牛客)
  • 重庆网站优化指导wordpress esc html
  • Java-168 Neo4j CQL 实战:WHERE、DELETE/DETACH、SET、排序与分页
  • 双算法 SSL 证书技术白皮书:SM2+RSA/ECC 混合加密机制深度解析
  • 找别人做的网站怎样修改html代码颜色
  • FPGA教程系列-Vivado IP核FIFO核
  • 大模型-详解 Vision Transformer (ViT) (3)
  • 酒店网站建设的重要性户外家具技术支持东莞网站建设
  • 4G+5G RF静态射频共享的介绍
  • 怎么网站改版想代理个网站建设平台
  • 贝叶斯共识聚类(BCC)
  • Mybatis操作数据库(入门)
  • 高阅读量博文:抓住“痛点”与“热点”/ 高下载量资源:提供“成品”与“利器”
  • css之flex属性
  • 网站建设时间计划广州高端网站设计公司排名
  • 怎么用自己的网站做邮箱wordpress 设计主题