在MySQL中使用通配符时应该注意的问题

作者:goldensun 时间:2024-01-26 13:17:07 

现象:

在MySQL中使用通配符时应该注意的问题

有一个表 action_conf,数据如下:
如果想获取以exp_site_10_开头的en_name的记录,sql语句该如何写?

   so easy!


select en_name from action_conf where en_name like 'exp_site_10_%'

   很自信的在idb中执行了这条sql,就会发现结果并不是所预期的。

   你会发现,执行上面的sql会把所有以 exp_site_10开头的记录都列出来了。

   原因:

   其实,这都是sql中的通配符在作怪。在sql中,下划线_是一个通配符,能匹配任何单一字符。

   既然知道原因,修改sql就很容易了。正确的sql应该是:


select en_name from action_conf where en_name like 'exp\_site\_10\_%'

   在通配符前面增加转移字符后,mysql就会把通配符视为普通字符。

   进阶:

   通配符整理:

 %                                  替代一个或多个字符

 _                                  仅替代一个字符

 [charlist]                         字符列中的任何单一字符

 [^charlist]或[!charlist]           不在字符列中的任何单一字符

标签:MySQL
0
投稿

猜你喜欢

  • 分享Python获取本机IP地址的几种方法

    2022-02-17 12:47:18
  • 解决Golang 中使用WaitGroup的那点坑

    2024-04-28 09:11:08
  • SQL Server 2012使用Offset/Fetch Next实现分页数据查询

    2024-01-25 03:54:55
  • golang之数据验证validator的实现

    2024-04-26 17:36:03
  • windows下安装、卸载mysql服务的方法(mysql 5.6 zip解压版安装教程)

    2024-01-13 04:56:20
  • Pandas中describe()函数的具体使用

    2021-03-22 14:32:12
  • python的json中方法及jsonpath模块用法分析

    2021-10-06 08:21:32
  • Python中的元组介绍

    2021-04-09 19:56:37
  • Python基础之赋值,浅拷贝,深拷贝的区别

    2021-06-28 18:39:15
  • 利用Python第三方库xlrd读取Excel中数据实例代码

    2023-02-17 05:28:58
  • python中apply函数详情

    2023-06-03 14:58:15
  • selenium+python实现自动登陆QQ邮箱并发送邮件功能

    2023-12-17 18:52:13
  • PHP+JS实现文件分块上传的示例代码

    2023-06-12 00:04:07
  • python去除字符串中的空格、特殊字符和指定字符的三种方法

    2022-06-12 20:21:31
  • ant design vue datepicker日期选择器中文化操作

    2024-05-09 10:51:35
  • python实现根据窗口标题调用窗口的方法

    2022-06-12 04:24:40
  • JS获取checkbox的个数简单实例

    2023-08-20 15:17:55
  • Webpack 实现 Node.js 代码热替换

    2024-05-13 10:04:14
  • 如何用Navicat操作MySQL

    2024-01-15 20:56:37
  • Python Pandas 修改表格数据类型 DataFrame 列的顺序案例

    2023-02-27 17:47:37
  • asp之家 网络编程 m.aspxhome.com