首页 > 数据库 >SQL学习四

SQL学习四

时间:2023-02-01 19:11:41浏览次数:35  
标签:LIKE 使用 通配符 学习 SQL WHERE name

1.学会使用 WHERE 子句,如何使用比较运算符对字段的数值进行比较筛选;

 

 WHERE 子句的基本格式是:SELECT ……(列名) FROM ……(表名) WHERE ……(子句条件)

2.如何使用逻辑运算符,进行多条件的过滤;

 

 一般来说 () 优先级最高,其次优先级是 AND,然后是 OR。

3.学会使用通配符对数据条件进行复杂过滤。

通配符就是我们用来匹配值的一部分的特殊字符。这里我们需要使用到 LIKE 操作符。

如果我们想要匹配任意字符串出现的任意次数,需要使用(%)通配符。


SQL:SELECT name FROM heros WHERE name LIKE '%太%'

如果我们想要匹配单个字符,就需要使用下划线 () 通配符。(%)和()的区别在于,(%)代表零个或多个字符,而(_)只代表一个字符。


SQL:SELECT name FROM heros WHERE name LIKE '_%太%'

你能看出来通配符还是很有用的,尤其是在进行字符串匹配的时候。不过在实际操作过程中,我还是建议你尽量少用通配符,因为它需要消耗数据库更长的时间来进行匹配。即使你对 LIKE 检索的字段进行了索引,索引的价值也可能会失效。如果要让索引生效,那么 LIKE 后面就不能以(%)开头,比如使用LIKE '%太%'或LIKE '%太'的时候就会对全表进行扫描。如果使用LIKE '太%',同时检索的字段进行了索引的时候,则不会进行全表扫描。总结

标签:LIKE,使用,通配符,学习,SQL,WHERE,name
From: https://www.cnblogs.com/anniedaniel/p/17083901.html

相关文章

  • SQL学习二
    1.了解DDL的基础语法,它如何定义数据库和数据表;DDL的英文全称是DataDefinitionLanguage,中文是数据定义语言。它定义了数据库的结构和数据表的结构。在DDL中,我们常......
  • 漏洞免费实战部分-安卓应用漏洞学习case6
    安卓应用漏洞学习case6前期回顾漏洞免费实战部分-安卓应用层getLastPathSegment函数问题漏洞实战部分2-安卓应用ZipEntry对象问题实战漏洞实战部分3-ContentProvider......
  • SQL学习一
    1.主流的DBMS都有哪些,它们各自都有哪些特点;既然SQL是通用的标准语言,为什么能存在这么多DBMS;从这些DBMS的发展史中,你有哪些感悟。DBMS的英文全称是DataBaseManag......
  • go学习笔记-
    http.HandleFunc("/",func(whttp.ResponseWriter,r*http.Request){http.ServeFile(w,r,"index.html")})HandleFunc注册一个处理器函数handler和对应的模式p......
  • 虚树 学习笔记
    虚树学习笔记如果有这么一个问题:在一棵超大的,有\(n\)个节点树上,并且树上有\(m\)个关键点,\(m\)远小于\(n\),如果问题只与关键点有关,我们不能很方便地在这棵超大的树......
  • python连接mysql并使用
    由于mysql体积小,速度快,成本低,源码开放,所以一些中小型系统开发都采用mysql我们连接mysql采用的工具包是pymysql1.安装pymysqlpipinstallpymysql2.pymysql工作图......
  • SQL优化
    1,查询语句不要使用select*2,尽量减少子查询,使用关联查询(leftjoin,rightjoin,innerjoin)替换3,减少使用in,notin,用exsists,notexists代替4,or的查询尽量使用union,unio......
  • MySQL基础-SQL-DCL
    1.介绍DCL英文全称是DataControlLanguage(数据控制语言),用来管理数据库用户、控制数据库的访问权限。2. DCL管理用户--1.查询用户USEmysql;SELECT*......
  • Mysql学习笔记
    Mysql是关系型数据库管理系统,管理的数据库是一堆关联表的集合。这里的表可以看作是一个二维表格,里面的每一行表示一条记录,是一组相关的数据。每一列存储的是一个属性对应的......
  • SQL Server 分页查询
    由于数据比较多,需要对数据进行分页展示,数据库用的是SQLServer,具体的分页方式:select*from(selecid,ROW_NUMBER()OVER(OrderbyinsertTimedesc)ASRowId fromt......