详解Mysql查询条件中字符串尾部有空格也能匹配上的问题
作者:小蒋不素小蒋 发布时间:2024-01-13 11:06:50
标签:Mysql,查询条件,字符串处理
一、表结构
TABLE person
id | name |
---|---|
1 | 你 |
2 | 你(一个空格) |
3 | 你(二个空格) |
二、查询与结果
select * from person where `name` = ?
无论 ? = ”你 + 几个空格”,都会检索出全部三个结果。
三、原因
MySQL 校对规则属于PADSPACE,会忽略尾部空格
针对的是 varchar char text …… 等文本类的数据类型
此为 SQL 标准化行为。无需要设置也无法改变。
四、想要精确查询怎么办?
方法一:like
select * from person where `name` like ?
方法二:BINARY
select * from person where `name` = BINARY ?
BINARY 不是函数,是类型转换运算符,它用来强制它后面的字符串为一个二进制字符串,可以理解成精确匹配
来源:https://www.cnblogs.com/xjnotxj/p/9019866.html


猜你喜欢
- 在Python3.6提供f-Strings新的字符串格式化语法。不仅更加可读、简洁,相比其他方式也不易造成错误,而且还更快。看完本文你将学习
- 雷达图雷达图是以从同一点开始的轴上表示的三个或更多个定量变量的二维图表的形式显示多变量数据的图形方法。轴的相对位置和角度通常是无信息的。 雷
- # 建表CREATE TABLE `T_TEST` ( `Id` int(11) NOT NULL AUTO_INCREMENT
- (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接) 网站的数据库连接语句为:Ser
- 前言在 JavaWeb 开发中,一般使用 Zxing 来生成和识别二维码,但是,Zxing 的识别有点差强人意,不少相对模糊的二维码识别率很
- mitmproxy是一个支持HTTP和HTTPS的抓包程序,类似Fiddler、Charles的功能,只不过它通过控制台的形式操作。此外,m
- 建立随机生成的HTML代码是一件相当容易实现的ASP特性。你可能创建过“每日一帖”、滚动广告等等,只需要稍加点缀就会令你的网站日久弥新。对存
- UserAgent = Trim(Lcase(Request.Serve
- 本文实例讲述了Python简明入门教程。分享给大家供大家参考。具体如下:一、基本概念1、数在Python中有4种类型的数——整数、长整数、浮
- 如何提高Request集合的使用效率?以加快程序处理速度: strTitle=Request.Form("Title&q
- 在事务性语句执行过程中,服务器将会进行额外的处理,在服务器执行时多个事务是并行执行的,为了把他们的记录在一起,需要引入事务缓存的概念。在事务
- #! /usr/bin/env python#coding=utf-8#实现哈希表(线性地址再散列)def ChangeKey(key,m,
- Hypothesis是Python的一个高级测试库。它允许编写测试用例时参数化,然后生成使测试失败的简单易懂的测试数据。可以用更少的工作在代
- 在部署一套内网测试环境时,频繁宕机,开机后不断的吃内存,重启apache之后内存占用会不停的上涨,直到swap用完,直到死机,由于是内网环境
- 一、类和对象通俗理解:类就是模板,对象就是通过模板创造出来的物体类(Class)由3个部分构成:类的名称: 类名类的属性: 一组数据类的方法
- 1. Anaconda1.1 Anaconda简介Anaconda是一个开源的python发行版本,是现在比较流行的python数据科学平台
- 前言:很多人都在使用mysql数据库,但是很少有人能够说出来整个sql语句的执行过程是怎样的,如果不了解执行过程的话,就很难进行sql语句的
- datetime的astimezone设置时区遇到的坑datetime有四个主要的模块:1、date 处理年、月、日。2、time 处理时、
- 因为评论有很多人说爬取不到,我强调几点kv的格式应该是这样的:kv = {‘cookie':‘你复制的一长串cookie',
- 本文实例讲述了python开启多个子进程并行运行的方法。分享给大家供大家参考。具体如下:这个python代码创建了多个process子进程,