sql where 不包含_SQL基础知识普及V1——LIKE

点击上方渣渣张的自白,关注获取SQL视频教程

SQL专栏

SQL数据库基础汇总

SQL基本介绍

有时在查询表中数据时需要返回符合某种匹配格式的所有记录,这时就需要使用LIKE或NOT LIKE谓词来指定模糊查询条件。

LIKE 作用

在WHERE子句中使用LIKE运算符来搜索列中的指定模式。 

有两个通配符与LIKE运算符一起使用:

  •  - 百分号表示零个,一个或多个字符

  • _ - 下划线表示单个字符

LIKE 语法

SELECT column1, column2, ... 

FROM table_or_view

WHERE columnN LIKE pattern;

提示:您还可以使用AND或OR运算符组合任意数量的条件。

SQL的参数说明

  • table_or_view : 表名或视图的名称。

  • column_list: 由逗号分隔的列名列表。

  • columnN : 需要模糊查询匹配的列名。

  • pattern : 模糊查询匹配条件。

下面是一些使用'%'和'_'通配符显示不同LIKE运算符的例子:

查询出某列中包含mr字符的数据,其中mr可以出现在任意位置WHERE 列名 LIKE '%mr%'
查询出某列中包含mr字符的数据,其中mr出现在开头位置WHERE 列名 LIKE 'mr%'
查询出某列中包含mr字符的数据,其中mr出现在结尾位置WHERE 列名 LIKE '%mr'
查询出某列中前俩个字符为mr,后一个字符为任意字符的数据WHERE 列名 LIKE 'mr_'
查询出某列中前一个字符为任意字符,后俩个字符为mr的数据WHERE 列名 LIKE '_mr'
查询出某列中以m或r字符开头的数据WHERE 列名 LIKE '[mr]%'

查询出某列中以a~e之间的字符开头的数据,包括a和e

WHERE 列名 LIKE '[a-e]%'
查询出某列中不是以m字符或r字符开头的数据WHERE 列名 LIKE '[^mr]%'
查询出某列中不是以a~e之间的字符开头的数据WHERE 列名 LIKE '[^a-e]%'

示例数据库

以下是 "base_category" 表中的数据:

3fd32f89d8659e8baaec552bd8d3726f.png

实例01

在"base_category" 商品表,查询出所有以‘上’开头的城市的数据。

我们使用以下SQL语句:

SELECT * FROM base_category WHERE 城市 LIKE '上%';

现在,"base_category" 表如下所示:

134716aaccc031863b8be23092ac2592.png

实例02

在"base_category" 商品表,查询出所有以‘肥’结尾的城市的数据。

SQL语句如下:

SELECT * FROM base_category WHERE 城市 LIKE '%肥';

结果如下:

bf333fcd140e3eb633e9370415576551.png

实例03

在"base_category" 商品表,查询出商品名称第二位为‘护’的商品名称数据。

SQL语句如下:

SELECT * FROM base_category WHERE 商品名称 LIKE '_护%';

结果如下:

f6c6316c76de0d5164f2fdaeb924b8be.png

实例04

在"base_category" 商品表,查询出商品名称以‘个’开头 以‘妆’结尾的所有数据。

SQL语句如下:

SELECT * FROM base_category WHERE 商品名称 LIKE '个%妆';

结果如下:

f6c6316c76de0d5164f2fdaeb924b8be.png

实例05

在"base_category" 商品表,查询城市不以‘上’开头的所有数据。

SQL语句如下:

SELECT * FROM base_category WHERE 城市 NOT LIKE '上%';

结果如下:

568b00c9678514b4b7087ed0d743edf9.png

批注

LIKE关键字主要作用就是模糊匹配,把你不是太明确的数据通过%,_进行组合来搜索到大概的数据。通过分析大概的数据进一步找到你需要的数据。在查找数据中经常用到,而且用法也很灵活。

d8145197f5b83673a03a9d84ae5e5291.png点击「」了解SQL基础

码字不易,点个在看
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SQL查询中,OR是一个逻辑运算符,用于在查询条件中指定多个条件之一成立即可返回结果。可以使用OR运算符将多个条件组合在一起,以便在满足任何一个条件时返回结果。 例如,如果我们想要查询身高与Rose相同或者名字以Rose开头的学生,可以使用OR运算符来实现。以下是一个示例查询语句: ``` SELECT * FROM student WHERE height = (SELECT height FROM student WHERE sname = 'Rose') OR sname LIKE 'Rose%' ``` 这个查询语句首先使用子查询获取到Rose的身高,然后使用OR运算符将身高与Rose相同的条件和名字以Rose开头的条件组合在一起,返回满足任何一个条件的学生记录。 另外,OR运算符也可以与其他逻辑运算符(如AND)一起使用,以构建更复杂的查询条件。例如,我们可以查询名字以Rose开头或者身高大于等于170的学生: ``` SELECT * FROM student WHERE sname LIKE 'Rose%' OR height >= 170 ``` 这个查询语句使用OR运算符将名字以Rose开头的条件和身高大于等于170的条件组合在一起,返回满足任何一个条件的学生记录。 总之,OR运算符在SQL查询中用于指定多个条件之一成立即可返回结果。可以与其他逻辑运算符一起使用,以构建更复杂的查询条件。 #### 引用[.reference_title] - *1* *2* *3* [SQL语句——查询语句](https://blog.csdn.net/aigo_2021/article/details/123317646)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值