MYSQL

本资料为产品岗位作为日常工作参考,语言口语化

At 2019/4/26 By David.Yang

如何使用限定条件来进行数据过滤?

在前问当中,我们已经学会到了SELECT查询,

在过程当中多次接触了WHERE这个关键词,打过预防针应该知道他就是用来做数据查询的过滤使用的。

如果没有他,我们将获取所有有限行内的数据,

这会给我们的查询结果带来麻烦,因为返回的结果集当中包含了我们不需要的很多数据。

比如考试成绩表,你想告诉杨过他妈穆念慈,你儿子杨过最近学习不太好啊,

你看看这考试成绩,挂的红灯笼都能把学校点没了,

这时候,你给他妈看6年前杨过上幼儿园的考试成绩,还有说服力么?

没有,限定的时间比如半年内,就是一个时间维度的查询条件,

学生 = 杨过,就是一个指定的学生查询条件。

如果没有条件限制,别说杨过半年的成绩单,就连杨过你都找不到。

他妈不得说你啊。

所以,WHERE是干嘛的?

WHERE是用来根据指定的条件,返回满足指定条件记录行的子句。

语法:

SELECT DISTINCT

column[,column...]

FROM

table_name

WHERE

where_conditions;

WHERE就是我们的查询条件

WHERE子句演示

我们构造一张学生考试表,当中包含了关键字段,

学生id、分数、考试时间等

然后补进一些测试数据。

(请记得我们前文曾接触过的批量插入数据语句)

我们获得测试数据如下

mysql>select* from tests;

黄老邪的弹指神通天下一绝,这么牛逼的老师,教的课怎么样呢?

课程弹指神通的课程id是1,他偷偷去考试表查了查学生的成绩,

黄老邪一句SQL猛操作

SQL

SELECT *

FROM

tests

WHERE

deleted = 0

LIMIT 10;

黄老邪定睛一看

这就的到了所有学生的考试信息了。

逻辑运算符

黄老邪其实不关心学生们的蛤蟆功、一阳指学的怎么样,

他只关心自己教的弹指神通(cuouse no = 1)

这时候我们可以对WHERE条件进行稍稍复杂化一点,

我们可以将多个表达式或逻辑运算符(AND OR)组合在一起形成一个复杂化的查询条件。

黄老邪是这么干的,他只想看自己的课程下学生的考试成绩,

SQL

SELECT *

FROM

tests

WHERE

deleted = 0

AND

courseno = 1

LIMIT 100;

比较运算符

在WHERE子句当中,出了=,我们还可以使用其他的比较运算符,

例如以下:

比如

黄老师想看看哪些小王八蛋弹指神通没好好学,不及格的

黄老邪这么做

SQL

SELECT *

FROM

tests

WHERE

deleted = 0

AND

courseno = 1

AND

score <=60

LIMIT 100;

这些比较运算符可以用在SELECT UPDATE DELETE的WHERE子句当中,

都是作为过滤条件的运算操作使用。

更多过滤条件

我们了解了在WHERE子句中可以使用AND进行条件的逻辑组装,

在面对更多更复杂的过滤条件是,我们还有类似其他

BETWEEN 在一个范围内进行条件过滤

LIKE 基于匹配模式的条件过滤

IN 在一个list中进行命中过滤

IS NULL 是否为NULL

本篇完成后,你可以通过WHERE子句进行条件过滤,当然是SELECT,

不管UPDATE,还是DELETE都可以适用WHERE子句过滤,后面篇章将讲解。

sql两个表查不同数据_产品操作MySQL第6篇 – 数据过滤-WHERE子句相关推荐

  1. mysql limit 丢数据_产品操作MySQL第6篇 – 数据过滤-LIMIT子句

    MYSQL 本资料为产品岗位作为日常工作参考,语言口语化 At 2019/4/26 By David.Yang 介绍下重量级子句LIMIT 我们在逛马蜂窝的时候,多少会看看游记攻略什么的, 你会发现马 ...

  2. plsql 查看表结构所有的字段_产品操作MySQL第2篇 – 设计一张表

    本资料为产品岗位作为日常工作参考,语言口语化 At 2019/4/16 By David.Yang 了解数据表的"字段"概念 我们前面说到,Excel.数据表都有一个表头, 比如学 ...

  3. mysql工具的使用_产品操作MySQL入门篇-工具使用

    MYSQL 本资料为产品岗位作为日常工作参考,语言口语化 At 2019/4/15 By David.Yang 数据库怎么登录/管理? 登录数据库的方式有多种, 比如 本地Client登录. 通过数据 ...

  4. mysql 存储二进制数据_为什么在MySQL中存储二进制数据?

    I'm a little confused - what are the pros of storing binary data in DB? Is it for security reasons, ...

  5. SQL两张表如何关联

    SQL两张表如何关联查询 比如:我有table1 和 table2 两张表table1: id name sex 1 张三 男 2 李四 女 3 王五 男table2: ...比如:我有table1 ...

  6. asscess 一条记录更新数据_一条MySQL更新语句是怎么执行的?

    流程图 这是在网上找到的一张流程图,写的比较好,大家可以先看图,然后看详细阅读下面的各个步骤. 执行流程: 1.连接验证及解析 客户端与MySQL Server建立连接,发送语句给MySQL Serv ...

  7. python mysql批量insert数据、返回id_Python3 操作 MySQL 插入一条数据并返回主键 id的实例...

    Python 中貌似并没有直接返回插入数据 id 的操作(反正我是没找到),但是我们可以变通一下,找到最新插入的数据 #!/usr/bin/env python3 # -*- coding: UTF- ...

  8. 查询a表有但是b表没有的数据_牛逼!一个上亿数据的报表竟然能做到秒查~

    数据背景 首先项目是西门子中国在我司实施部署的MES项目,由于项目是在产线上运作(3 years+),数据累积很大.在项目的数据库中,大概上亿条数据的表有5个以上,千万级数据的表10个以上,百万级数据 ...

  9. mysql数据库导入到excel表格数据_[转载]将EXCEL表格中的数据导入mysql数据库表中(两种方法)...

    今天项目上遇到需要将excel中的数据导入到数据库的classify表中,于是乎拼命上网查阅方法,发现以下两种方法比较可行: 在此之前先说说按照网上的说法我没有试验成功的方法,将excel文件xls保 ...

最新文章

  1. C++this指针操作
  2. WIN7无法记住远程登录密码
  3. Map转xml格式字符串
  4. SQL2008无法连接到.\SQLEXPRESS,用户'sa'登录失败(错误18456)图文解决方法
  5. powershell 常用命令笔记
  6. Error:Unable to make the module: core, related gradle configuration was not found. Please, re-import
  7. zookeeper教程,docker 安装,命令,python操作zookeeper,分布式队列,分布式锁
  8. excel删除重复数据保留一条_Excel一键删除重复数据,你居然还用逐条排查?
  9. 小程序分包Error: 分包大小超过限制,main package source
  10. 电脑右下角弹出广告解决方法
  11. Elite Graphix Elite Cms SQL注入漏洞(CVE-2022-24263)
  12. 30线性空间04——子空间的直和、n个子空间的直和、直和分解、直和补
  13. 芯片供应商:芯片一级供应商分类和安全芯片库存
  14. u盘win7纯净版_U盘PE启动安装Win7系统教程(微PE版)
  15. 从子域名看百度,新浪,搜狐,QQ和网易
  16. Gitlab集成odoo单点登录
  17. 服务器发布Java jar包
  18. PyTorch-17 使用TorchText进行文本分类
  19. python package 之 jenkins
  20. NOIP2020划水记

热门文章

  1. SQL Server 2017 RC1 现已实现 Linux 功能扩展
  2. .Net Core 之 MSBuild 介绍
  3. IIS负载均衡-Application Request Route详解第五篇:使用ARR来配置试点项目
  4. Microsoft将Linux带至桌面操作系统
  5. php symfony urlmatcher-gt;match,symfony路由组件(The Routing Component)
  6. 【空间数据库技术】ArcSDE 10.1安装配置与企业级地理空间数据库的建立及连接
  7. C语言九十七之实现有 1、2、3、4 个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?并且输出多少个
  8. vuepress build提示YAMLException: end of the stream or a document separator is expected at line 7, colu
  9. 剑指offer之数组中的逆序对
  10. linux 路由表设置 之 route 指令详解