mysql 的 like 问题,超强毕杀记!!!

方法一:
解决方法是对于包含中文的字段加上"binary"属性,使之作为二进制比较,例如将"name char(10)"改成"name char(10)binary"。 
方法二: 
  如果你使用源码编译MySQL,可以编译MySQL时使用--with--charset=gbk 参数,这样MySQL就会直接支持中文查找和排序了。
方法三: 
  可以使用 Mysql 的 locate 函数来判断。以上述问题为例,使用方法为:
SELECT * FROM table WHERE locate(field,'李') > 0;
方法四: 
把您的Select语句改成这样,SELECT * FROM TABLE WHERE FIELDS LIKE BINARY '%FIND%'即可

问题出现的原因是:  在MySQL中,进行中文排序和查找的时候,对汉字的排序和查找结果是错误的。这种情况在MySQL的很多版本中都存在。如果这个问题不解决,那么MySQL将无法实际处理中文。 
出现这个问题的原因是:MySQL在查询字符串时是大小写不敏感的,在编绎MySQL时一般以ISO-8859字符集作为默认的字符集,因此在比较过程中中文编码字符大小写转换造成了这种现象

(0)

相关推荐

  • MySql like模糊查询通配符使用详细介绍

    一.SQL模式 SQL的模式匹配允许你使用"_"匹配任何单个字符,而"%"匹配任意数目字符(包括零个字符).在 MySQL中,SQL的模式缺省是忽略大小写的.下面显示一些例子.注意在你使用SQL模式时,你不能使用=或!=:而使用LIKE或NOT LIKE比较操作符. SELECT 字段 FROM 表 WHERE 某字段 Like 条件 其中关于条件,SQL提供了四种匹配模式: 1,%:表示任意个或多个字符.可匹配任意类型和长度的字符. 比如 SELECT * FRO

  • mysql正则表达式 LIKE 通配符

    扩展正则表达式的一些字符是: "."匹配任何单个的字符. 一个字符类"[...]"匹配在方括号内的任何字符.例如,"[abc]"匹配"a"."b"或"c".为了命名字符的一个范围,使用一个"-"."[a-z]"匹配任何小写字母,而"[0-9]"匹配任何数字. " * "匹配零个或多个在它前面的东西.例如,&q

  • MySQL Like语句的使用方法

    REGEXP例1.查询字段中包含非英文的数据 复制代码 代码如下: SELECT *FROM `m_user`WHERE `emp_no`REGEXP '[^ -~]' =1 列2.这样能把所有不含英文的都搞出来 复制代码 代码如下: SELECT *FROM tableWHERE nameNOT REGEXP '[a-zA-Z0-9]+' 当然除了regexp之外还可以使用FIND_IN_SET,like来操作FIND_IN_SETmysql中如何使用FIND_IN_SET(),以及使用FIN

  • mysql like查询字符串示例语句

    MySQL提供标准的SQL模式匹配,以及一种基于象Unix实用程序如vi.grep和sed的扩展正则表达式模式匹配的格式 一.SQL模式 SQL的模式匹配允许你使用"_"匹配任何单个字符,而"%"匹配任意数目字符(包括零个字符).在 MySQL中,SQL的模式缺省是忽略大小写的.下面显示一些例子.注意在你使用SQL模式时,你不能使用=或!=:而使用LIKE或NOT LIKE比较操作符. SELECT 字段 FROM 表 WHERE 某字段 Like 条件 其中关于条

  • mysql 的 like 问题,超强毕杀记!!!

    方法一: 解决方法是对于包含中文的字段加上"binary"属性,使之作为二进制比较,例如将"name char(10)"改成"name char(10)binary".  方法二:  如果你使用源码编译MySQL,可以编译MySQL时使用--with--charset=gbk 参数,这样MySQL就会直接支持中文查找和排序了. 方法三:  可以使用 Mysql 的 locate 函数来判断.以上述问题为例,使用方法为: SELECT * FROM

  • php shell超强免杀、减少体积工具实现代码

    lostwolf写的 这不是webshell,只是个webshell免杀工具 切勿当初webshell使用 仅限免杀phpwebshell 该工具运行在 cli 模式! 如果有无法突破的文件内容过滤 可尝试下用这个工具 免杀大马! 任意php webshell 通过此工具编码之后可以饶过国内一些bt的防火墙 复制代码 代码如下: <?php /* Title: PHP shell nokill T00L Blog: exploit-db.blogcn.com */ error_reporting

  • 查杀软件 360安全卫士 v3.2.1.1001 下载

    拥有最强大的恶意软件查杀功能,将隐藏在系统中的恶意软件一网打尽,保障电脑安全.全面诊断您的系统,让您一键搞定系统诸多问题.清理使用window时留下的痕迹,最有效的保护您的隐私. 360安全卫士 v3.2 正式版 (2007-3-13)·软件好坏,网民决定与360软件百科系统相结合,由网民自主决定谁是"恶意软件"查杀与否?更多网民帮助您更好选择 进入360软件百科·超强查杀"破冰"技术,独家清除cnnic中文上网等顽固型恶意软件增强查杀引擎,变形变名恶意软件统统扫出

  • mysql字符串拼接的4种方式总结

    目录 前言 第一种: 第二种: 第三种: 第四种(运算,只对数字有效): 附:MySQL group_concat()详解 总结 前言 总是记不住字符串拼接,每次都要百度去搜索,所以在这里记录一下,好方便后续的查找,如有错误和问题可以提出,谢谢. 字符串拼接分为几种方式,在这里会一一举例写出: 第一种: mysql自带语法CONCAT(string1,string2,…),此处是直接把string1和string2等等的字符串拼接起来(无缝拼接哦) 说明:此方法在拼接的时候如果有一个值为NULL

  • 十二款世界顶级杀毒软件下载,有序列号全可免费升级

    2006年世界顶级杀毒软件排名 金奖:   BitDefender银奖:   Kaspersky铜奖:   F-Secure Anti-Virus第四名: PC-cillin第五名: ESET Nod32第六名: McAfee VirusScan第七名: Norton AntiVirus第八名: AVG Anti-Virus第九名: eTrust EZ Antivirus第十名: Norman Virus Control第十一名:AntiVirusKit第十二名:AVAST!这里是排名的国外网站

  • VPS主机CentOS系统安装LNMP环境图文教程分享

    我们国人使用VPS安装的系统环境最多的可能就是LNMP,笔者最近也在学着安装和使用VPS,也看到很多种系统环境可以选择,当然包括可以选择安装面板管理.暂时我不选择安装面板,一来使用面板没有技术含量,二来从难处学习,直接使用SSH操作VPS感觉还是非常有面子的.从多个系统中,我暂时也比较不了好坏,每一个都安装和测试一遍,并且把相关的信息都记录,一遍日后对比. 今天先来在CentOS中安装LNMP系统,最低的系统要求为128M内存,我相信大家的VPS最低也应该有256M内存,我测试的机器为512M内

  • Linux下安装MySQL5.7.19问题小结

    第一次在自己虚机上安装mysql 中间碰到很多问题 在这里记下来,分享一下. linux centOS 6 mysql版本 mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz 1.groupadd mysql      ## 添加一个mysql组 2.useradd -r -g mysql mysql    ## 添加一个用户 3.解压缩下载的包,tar -xzvf /usr/local/mysql-5.7.13-linux-glibc2.5-x86_64.ta

  • 360安全卫士 3.0 正式版下载

    360安全卫士是一款安全类上网辅助软件,它拥有查杀恶意软件,插件管理,病毒查杀,诊断及修复四大强劲功能,同时还提供弹出插件免疫,清理使用痕迹以及系统还原等特定辅助功能.360安全卫士适用于windows2k/xp系统,IE5.0以上浏览器.360安全卫士是由奇虎网推出的一款全免费产品.2007-1-31 360安全卫士v3.0正式版发布·主动防御阻止恶意程序安装,保护系统关键位置拦截恶意钓鱼网站,防止帐号.QQ号.密码丢失·超强查杀"破冰"技术,独家清除cnnic中文上网等顽固型恶意软

  • Mac下快速搭建PHP开发环境步骤详解

    最近做了一个后端的项目,是用PHP+MySQL+Nginx做的,所以把搭建环境的方法简单总结一下. 备注: 物料:Apache/Nginx+PHP+MySQL+MAMPMac OS 10.12.1 自带Apache,Nginx和PHP 1.运行Apache 查看Apache版本,在终端根目录输入如下命令: sudo apachectl -v 终端会输出Apache的版本及built时间 Server version: Apache/2.4.23 (Unix) Server built:   Au

  • windows下安装mysql-8.0.18-winx64的教程(图文详解)

    1.下载安装包 安装包现在地址: https://dev.mysql.com/downloads/mysql/ 2.解压缩至安装目录 解压缩下载之后的zip,我这里使用的安装路径为: C:\Program Files\mysql-8.0.18-winx64 解压缩之后,需要在安装路径下手动创建data文件夹以及my.ini文件 3.配置my.ini文件 编辑my.ini文件的内容 [mysqld] # 设置3306端口 port=3306 # 设置mysql的安装目录 basedir=C:\Pr

随机推荐