过滤数据

Distinct 直接跟在select后面,后面跟一个或多个字段,从结果集中删除列中的重复值。达到一个列或多个列的去重复作用。将所有null值视为相同的值

语法:

Select distinct 字段 from 表名

注:null的查询方法比较特殊 为空is null  不为空is not null

Where指定搜索条件以过滤from返回的行。仅返回导致搜索条件计算为true的行

And查询满足两个条件的行,用于组合两个布尔表达式。要两个条件同时为真才能返回数据

(>,=<)比较运算符

Or查找满足任意一个条件的行

当and和or一起连用的时候对数据的筛选是有影响的,and的优先级比or的大。所以先查询and再查询or

例:select * from sc

where cno='c001' or

cno='c002' and score >80

;

Between查询两个值之间的值的行,主要用于做两个数字之间的查询也可以用于两个日期之间的查询

语法:字段 between 数值 and 数值

例:select * from student

where sage between 21 and 22

;

可以使用大于或等于且小于或等于来替换between运算符

语法:字段 <= 数值 and 字段 >=数值

例:select * from student

where sage <=22 and sage >= 21

;

in查找值列表中具有值的行,可以把多个on连在一起的条件简化成in

语法:column IN (v1, v2, v3)

column = v1 OR column = v2 OR column = v3

注:v1、v2指的是一些具体的值。数字类型不需要写单引号,字符串类型就要写单引号

例:select * from student

where sage in (21,22)

;

like查找包指定含字符串的行(模糊查询)

注:英文字母在数据库中不区分大小写

通配符

%表示0个或多个字符的字符串

下划线:表示任意单个字符

[  ]表示指定集合中的任意单个字符串

[  -  ]表示指定范围内的单个字符

[^]表示不再列表或范围内的任何单个字符

like模糊查询默认是不区分大小写的

例:select * from student

where sname like '陈%'

;

列和表的别名

用于为表或表中的列提供临时名称,只在运行时生效,简化SQL的可读性

语法:

表::Select 列名 from 表名 AS 别名

列:Select 列名 AS 别名 from 表名

注:AS关键字可以省略

分组数据

Group by 根据by指定的规则对数据进行分组,分组就是将一个“数据集”划分成若干个“小区域”进行数据处理

Count()是一个聚合函数。计数,记某一个组有多少行数据。

Count(*)表示对整个表进行计数,每一行做了一个分组

例:select ssex, count(*)

from student

group by ssex;

聚合函数:sum()、AVG()、min()、max()。

字段要放在聚合函数中或group by中,group by后面的字段可以比上面的字段多

上面的字段不会影响总行数,只会影响显示出来的列有哪些字段

Having通常与group by一起使用,跟在group by的后面

无名列:就是没有命名的列,最好给它命名,因为它有可能在查询中报错。如果在子查询中做了一些聚合函数,那么你在用这些列的时候就会报错。

过滤列不能用上面列的命名代替

结果时分组之后的运算,分组之后把计算出来的列赋予了它一个名称,但是分组和过滤要先运行

例:select sno,sum(score)总成绩 from sc

group by sno

having sum(score)>150

;

SQL--数据的过滤和分组相关推荐

  1. 【SQL语法基础】数据过滤:SQL数据过滤都有哪些方法?

    我在上篇文章中讲到过,提升查询效率的一个很重要的方式,就是约束返回结果的数量,还有一个很有效的方式,就是指定筛选条件,进行过滤.过滤可以筛选符合条件的结果,并进行返回,减少不必要的数据行. 那么在今天 ...

  2. 数据过滤:SQL数据过滤都有哪些方法?

    我在上篇文章中讲到过,提升查询效率的一个很重要的方式,就是约束返回结果的数量,还有一个很有效的方式,就是指定筛选条件,进行过滤.过滤可以筛选符合条件的结果,并进行返回,减少不必要的数据行. 那么在今天 ...

  3. sql 基础语法 创建数据库和数据表 数据增删改查 分组查询 子查询回顾

    参考链接: SQL教程 MySQL教程 一.创建数据库语法 --用master数据库 use master --判断数据库是否存在,若存在则删除 if exists (select * from sy ...

  4. 【4 - 分组】Sql Server - 郝斌(分组group by、过滤having、聚合函数max() / count()、排序order by、select语句的执行顺序)

    课程地址:数据库 SQLServer 视频教程全集(99P)| 22 小时从入门到精通_哔哩哔哩_bilibili ​ 目录 group by(分组) group by a,b 的用法 having( ...

  5. SQL数据分组:GROUD BY与HAVING

    SQL数据分组 GROUP BY 语句 HAVING 子句 GROUP BY 语句 GROUP BY 语句用于结合合计函数(比如 SUM),根据一个或多个列对结果集进行分组. SQL GROUP BY ...

  6. mysql怎么排序检索_MySQL 2 SQL数据使用(检索、排序、过滤:SELECT/FROM/LIMIT/ORDER BY/DESC/WHERE/AND/OR/IN/NOT)...

    .空格被忽略,可以用一或多个空格分开指令. 检索单个列: SELECT 列名  FROM 表名: 检索多个列: 当心逗号 SELECT 列1,列2,列3  FROM 表: 检索所有列:(*)通配符 S ...

  7. SQL的基础学习:二、数据的过滤

    数据的过滤 过滤数据 1.普通过滤 1.使用where子句 2.where子句操作符 2.高级过滤 组合WHERE 子句(AND.OR.IN.NOT) 3.用通配符进行过滤-LIKE的使用 总结 过滤 ...

  8. sql数据黑马程序员——SQL入门

    最近研究sql数据,稍微总结一下,以后继续补充: ---------------------- ASP.Net+Android+IO开辟S..Net培训.等待与您交流! --------------- ...

  9. 数据库编程1 Oracle 过滤 函数 分组 外连接 自连接

    [本文谢绝转载原文来自http://990487026.blog.51cto.com] <大纲>数据库编程1 Oracle 过滤 函数 分组 外连接 自连接本文实验基于的数据表:winso ...

  10. MySQL学习记录 (二) ----- SQL数据查询语句(DQL)

    相关文章: <MySQL学习记录 (一) ----- 有关数据库的基本概念和MySQL常用命令> <MySQL学习记录 (二) ----- SQL数据查询语句(DQL)> &l ...

最新文章

  1. 7-2 然后是几点 (C语言)
  2. phpstudy下的mysql升级
  3. js实现数独算法(优化版本)
  4. 没错,接单就是特简单!
  5. Pytorch教程(十六):FashionMNIST数据集DataSet DataLoader
  6. 动态规划训练8 [E - Multiplication Puzzle POJ1651]
  7. python输错了怎么办_python怎么实现输错三次密码之后锁定
  8. 关于JAVA匿名内部类,回调,事件模式的一点讨论
  9. 数据库中union和union all的区别
  10. 推荐一个CodeProject上的SlideForm控件
  11. javascript之事件模型
  12. 高通平台如何新增加一个分区,并mount到android系统中
  13. 解决安装Discuz!插件时提示“对不起,您安装的不是正版应用,安装程序无法继续执行”的方法...
  14. Atitit 查找轮廓 findContours
  15. 【python】80行代码实现压缩包密码破解软件,支持zip和rar
  16. matlab 龙格库塔函数,matlab龙格库塔
  17. Eclipse 绿豆沙
  18. 使用chrome添加网页到桌面
  19. websocket+php+layIm实现 单聊、群聊功能 即时通讯【可发送图片文件】
  20. python可执行文件的扩展名_可执行文件的扩展名是什么

热门文章

  1. web开发报错:The origin server did not find a current representation for the target…
  2. 基于CNN的手写数字识别
  3. 注意力机制Attention Mechanism及论文
  4. 论文阅读_图注意力网络
  5. python求满足条件的值的个数_Python list中选择满足某种条件的数据操作
  6. 基于JSP的大学生健康管理系统
  7. html div flex,利用css flex实现垂直居中
  8. $().click()和$().on(‘click‘,function(){})的区别
  9. 5W无线充非认证版便宜实用无线充电器常用方案
  10. 计算机英语写一封邮件给汤姆作文,英语仿写一封信 介绍自己