一、AND

  通过WHERE可以进行条件过滤,但只限于单个条件。

  通过AND就可以连接多个条件,AND代表了和,即AND两边的条件全部满足才会通过筛选。

  这就类似编程语言中的&&。

  

  以下表为例:

  

  

  找出vend_id 等于‘DLL01’且prod_price > 4信息。

二、OR

  OR代表了或者,筛选时只需满足OR任意一边的条件即可。类似编程语言中的||。

  例如:

  

  寻找vend_id = 'DLL01'或者prod_price > 4的信息,只需满足任何一个即可。

  

  

三、组合次序。

  OR和AND可以联合使用,但需要注意其组合次序,一般AND优先级高于OR。

  使用时最好加上()以表明那个操作符是一个整体。

  

  加上括号后会先算括号内的,如果不加括号会先算AND两边的条件。

  使用时最好加上括号。

四、IN

  IN用于指定条件范围,即只需满足IN指定的多个条件其中一个即可。

  WHERE id IN(1,2,3) 只需id等于1或2或3即满足条件。

  等价于WHERE id = 1 OR id = 2 OR id = 3;

  

  vned_id等于'DLL01'或‘BRS01’的用户被筛选出来了。

  主要是IN() 的括号中可以添加SELECT语句,将SELECT语句的检索结果作为判断参数。

  

五、NOT操作符

  NOT操作符就是否认后面的条件,类似编程语句的!。

  如果NOT后面是单一的条件,则否定是后面的单个条件。

  如果NOT后面是被括号括起的多个条件,则否定的是这个括号内多个条件的结果。

  例如(条件1...条件n) 为真, 则 NOT(条件1...条件n)为假。

  下面看具体例子

  

  否定后面单个条件,即变成了 prod_price >= 4 AND prod_price < 6。

  

  括号内条件筛选时所有小于4且小于6的信息(即所有小于4的信息),加上NOT后就变成了所有大于等于4的信息。

  

  该例原本是vend_id等于'DLL01'或‘BRS01’,加上NOT后就变成了除了这些数据(满足vend_id等于‘DLL01’或“BRS01”)之外的其他数据。

  即  NOT (vend_id = 'DLL01'  OR  vend_id = 'BRS01')等价 (NOT vend_id = 'DLL01'  AND NOT vend_id = 'BRS01').记得这是一个定理具体的名字忘了。

  !(a || b) == !a && !b

六、用通配符进行过滤

  使用通配符就可以实现类似正则表达式的操作,匹配数据中指定数据,使匹配更加灵活。

  例如我想匹配所有商品名称中带‘dog’的商品,这时采用常规操作比较难办到。

  

  通配符就是一些代表特殊含义的字符,使用这些特殊含义的字符时需要通过LIKE匹配。

  

  6.1 %

  %通配符代表任意字符出现任意次数。(空格也是字符)

  

  prod_name LIKE '%be%'代表只要prod_name中有‘be’,‘be‘ 前面、后面可以是任意字符出现任意次数。

  

  6.2 _

  _通配符代表任意字符出现一次

  

  匹配了‘8 inch teddy bear’,但没有匹配‘12 inch teddy bear’ 因为12是两个字符所以需要‘__’(两个)

  注意空格也是字符,‘_ in%’中'_'和in之间需要一个空格。

参考资料:

《SQL必知必会》

1.2(SQL学习笔记)高级数据过滤的更多相关文章

  1. SQL学习之高级数据过滤

    一.高级数据过滤之IN操作符 IN 操作符用来指定条件范围,范围中的每个条件都可以进行匹配.IN取一组由逗号分隔.括在圆括号中的合法值.代码如下: select ItemId,ItemName,Che ...

  2. 数据库MySQL学习笔记高级篇

    数据库MySQL学习笔记高级篇 写在前面 学习链接:数据库 MySQL 视频教程全集 1. mysql的架构介绍 mysql简介 概述 高级Mysql 完整的mysql优化需要很深的功底,大公司甚至有 ...

  3. ORALCE PL/SQL学习笔记

    ORALCE  PL/SQL学习笔记 详情见自己电脑的备份数据资料

  4. Windows phone 8 学习笔记(2) 数据文件操作

    原文:Windows phone 8 学习笔记(2) 数据文件操作 Windows phone 8 应用用于数据文件存储访问的位置仅仅限于安装文件夹.本地文件夹(独立存储空间).媒体库和SD卡四个地方 ...

  5. #学习笔记#JSP数据交互

    #学习笔记#JSP数据交互 数据库的使用方式:   当用户在第一个页面的查询框输入查询语句点提交的时候我们是用什么样的方式完成这个查询的? 答:我们通过在第一个页面提交表单的形式,真正的数据库查询时在 ...

  6. ArcGIS案例学习笔记_3_2_CAD数据导入建库

    ArcGIS案例学习笔记_3_2_CAD数据导入建库 计划时间:第3天下午 内容:CAD数据导入,建库和管理 目的:生成地块多边形,连接属性,管理 问题:CAD存在拓扑错误,标注位置偏移 教程:pdf ...

  7. GIS案例学习笔记-CAD数据分层导入现有模板实例教程

    GIS案例学习笔记-CAD数据分层导入现有模板实例教程 联系方式:谢老师,135-4855-4328,xiexiaokui#qq.com 1. 原始数据: CAD数据 目标模板 2. 任务:分5个图层 ...

  8. ArcGIS案例学习笔记-CAD数据自动拓扑检查

    ArcGIS案例学习笔记-CAD数据自动拓扑检查 联系方式:谢老师,135-4855-4328,xiexiaokui#qq.com 功能:针对CAD数据,自动进行拓扑检查 优点:类别:地理建模项目实例 ...

  9. SQL学习笔记

    SQL(Structured Query Language)学习笔记 [TOC] Terminal登录数据库 1.登录mysql -u root -p ; 2.显示所有数据库show database ...

  10. Oracle之PL/SQL学习笔记

    自己在学习Oracle是做的笔记及实验代码记录,内容挺全的,也挺详细,发篇博文分享给需要的朋友,共有1w多字的学习笔记吧.是以前做的,一直在压箱底,今天拿出来整理了一下,给大家分享,有不足之处还望大家 ...

随机推荐

  1. eclipse执行maven install命令时跳过test

    在pom.xml里面配置一下代码,将跳过test. <plugins> <plugin> <groupId>org.apache.maven.plugins< ...

  2. 【Git/GitHub学习笔记】基本操作——创建仓库,本地、远程同步等

    近日想分享一些文件,但是用度盘又太麻烦了(速度也很恶心).所以突发奇想去研究了下GitHub的仓库,这篇文章也就是一个最最最基础的基本操作.基本实现了可以在GitHub上存储文本信息与代码. 由于我的 ...

  3. IT界天才少年:比肩雷军、叫板任正非,自己作死了

    两点之间,走弯路和走直路到达的终点是一样的,而他只是走了弯路,他曾在华为身居高位.后又创业.做投资,完全是不差钱的主. 他跌宕起伏的人生中充满传奇,成功.失败.遗憾.矛盾,每个词都不足以形容他,只有这 ...

  4. Asp.Net Forms获取UEeditor内容

    UEeditor是比较常用的富文本编辑器. 获取编辑器的内容,需要使用js获取,官方提供的方法是:UE.getEditor('editor').getContent(); 官方提供的.net例子中是使 ...

  5. DateTimeToUnix/UnixToDateTime 对接时间转换

    问题,通过毫秒数来解析出时间:(很多对接的时候经常需要用到) <?php $MyJson = '{"jingdong_vas_subscribe_get_responce": ...

  6. jboss和tomcat有什么不同

    2.tomcat 是 JSP/Servlet 容器jboss 是 JEE 容器,JEE 包括JSP/Servlet,JMS, EJB,JAX-WS,JAX-RS,CDI等等, tomcat是完全开源, ...

  7. (ubuntu) pip install scandir 时出现错误 fatal error: Python.h: No such file or directory

    安装 jupyter时遇到这个问题,在这里查到了解决方法,特记录一下. 解决方式为: 先安装 python-dev: $ sudo apt-get install python-dev 然后再安装需要 ...

  8. 稍微谈一下 javascript 开发中的 MVC 模式

    随着前台开发日益受到重视,客户端代码比重日益增加的今天,如何在javascript开发里应用MVC模式,这个问题似乎会一直被提到,所以偶在这里粗略的谈一下自己的看法吧. MVC模式的基本理念,是通过把 ...

  9. 如何在SQL Server中的SELECT TOP 中使用变量

    语法   [ TOP (expression) [PERCENT] [ WITH TIES ] ] 注意:expression 是在一对圆括号内的,而之后又有如下的例子 在 TOP 中使用变量 以下示 ...

  10. 史上最全的web前端系统学习教程!

    这份资料整理花了近7天,如果感觉有用,可以分享给更有需要的人. 在看接下的介绍前,我先说一下整理这份资料的初衷: 我的初衷是想帮助在这个行业发展的朋友和童鞋们,在论坛博客等地方少花些时间找资料,把有限 ...