首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

SQL 基础(四)单关系数据查询

选取、投影 操作 SQL 指令功能强大,无需规定投影、选取、连接执行顺序 无条件查询 仅包含 SELECT……FROM 查询,等价于对关系做 投影 操作 1.查询指定信息 USE db_student...3.查询表单身份信息 不使用 WHERE 子句无条件查询称投影查询,SQL中只有使用 DISTINCT 关键字才会消去重复列,关系代数投影运算自动消去 SELECT distinct polity...如果不加 distinct ,查询结果将会显示所有符合结果(含重复列),不易阅读 4.查询所有学生学号/姓名/身份 SELECT sno , sn , polity -- 逗号分隔不同属性值 FROM...select sno,xf from tb_score where score>=70 AND score<=90 --SQL Server 中等价于 where score BETWEEN 70...求最大值 MIN 求最小值 COUNT 按求个数 count(*) 对表中数目进行计数,无论是否为空 count(colum) 对特定中具有的值计数,忽略 NULL 查询学号为 XXX 学生总成绩和平均成绩

1.2K30

SQL面试必刷题(1) Case When

SQL语言是每个开发人员必备一种技能,本文对面试过程中常见SQL面试题进行分类、汇总,每类题型包括一些例题,希望大家能够举一反三。 01 Case When 是什么?...有一个表table1(A,B,C),用SQL语句选出两个,第一是A、B两较大者,第二是B、C两较小者。...有一张表table2(语文成绩、数学成绩、英语成绩),请用一条sql语句按以下显示条件得出结果显示条件:大于或等于80显示为优秀,大于或等于60表示及格,小于60分表示不及格。...有如下人口统计数据,要求按照国家和性别进行分组,得出结果如下: ? ?...与distinct结合,去重分组统计 # 统计每个类型数量 select count(distinct case when type='1' then id else null end )type1

1.5K40
您找到你想要的搜索结果了吗?
是的
没有找到

Mysql常用查询语句

MySQL:SELECT * from tb_name WHERE birthday = ‘2011-04-08’ (2)SQL Server:SELECT * from tb_name WHERE ...SELECT * FROM tb_stu WHERE age>$_POST[age] ORDER BY age; 十五查询结果显示重复记录 SELECT DISTINCT 字段名 FROM 表名... WHERE 查询条件 注:SQL语句中DISTINCT必须与WHERE子句联合使用,否则输出信息不会有变化 ,且字段不能用*代替 十六NOT与谓词进行组合条件查询 (1)NOT BERWEEN...二十对统计结果进行排序 函数SUM([ALL]字段名) 或 SUM([DISTINCT]字段名),可实现对字段求和,函数中为ALL时为所有该字段所有记录求和,若为DISTINCT则为该字段所有不重复记录字段求和...语句中时,要将分组语句书写在排序语句前面,否则会出现错误 二十二多数据分组统计 多数据分组统计与单列数据分组统计类似 SELECT *,SUM(字段1*字段2) AS (新字段1) FROM

5.1K20

MySQL数据库增删改查(进阶)

最小值 案例:提下图数据演示 COUNT: 由此图可以看出count(*)函数是一个特殊情况,只是单纯计数,count(math)计数会跳过空值....查询每个岗位平均工资,但是刨除掉平均工资大于2000数据....; select 字段 from 表1 别名1,表2 别名2 where 连接条件 and 其他条件; 笛卡尔积,就是得到了一个更大表.例数,就是原来两个表数之和.行数,就是原来两个表行数之积...如果联合查询,左侧表完全显示我们就说是左外连接;右侧表完 全显示我们就说是右外连接。...子查询 子查询是指嵌入在其他sql语句中select语句,也叫嵌套查询 多行子查询:返回多行记录子查询 IN 关键字 2.2.5 合并查询 union 允许从不同多个表分别查询,只要求每个表查询结果集合类型和个数匹配即可

13610

常用SQL查询语句,值得回看不要错过,好记性不如多看看!

tb_stu ORDER BY id ASC LIMIT _POST[begin],n 注意:数据id是从0开始 测试工作常用SQL查询语句 十一、查询统计结果前n条记录 SELECT *...十四、查询大于指定条件记录 SELECT * FROM tb_stu WHERE age>$_POST[age] ORDER BY age; 十五、查询结果显示重复记录 SELECT DISTINCT...字段名 FROM 表名 WHERE 查询条件 注:SQL语句中DISTINCT必须与WHERE子句联合使用,否则输出信息不会有变化 ,且字段不能用*代替 十六、NOT与谓词进行组合条件查询 (1...二十、对统计结果进行排序 函数SUM([ALL]字段名) 或 SUM([DISTINCT]字段名),可实现对字段求和,函数中为ALL时为所有该字段所有记录求和,若为DISTINCT则为该字段所有不重复记录字段求和...语句中时,要将分组语句书写在排序语句前面,否则会出现错误 二十二、多数据分组统计 多数据分组统计与单列数据分组统计类似 SELECT *,SUM(字段1*字段2) AS (新字段1) FROM 表名

2.8K30

优化临时表使用,SQL语句性能提升100倍

,将第一条sql结果使用in操作拼接到第二条sql SELECT DISTINCT g.*, cp.name AS cp_name,c.name AS category_name,t.name AS...ORDERY BY DISTINCT(price) 4)SELECT语句中指定了SQL_SMALL_RESULT关键字 SQL_SMALL_RESULT意思就是告诉MySQL,结果会很小,请直接使用内存临时表...直接使用磁盘临时表场景 1)表包含TEXT或者BLOB; 2)GROUP BY 或者 DISTINCT 子句中包含长度大于512字节; 3)使用UNION或者UNION ALL时,SELECT子句中包含大于...512字节; 临时表相关配置 tmp_table_size:指定系统创建内存临时表最大大小; http://dev.mysql.com/doc/refman/5.1/en/server-system-variables.html...常见避免临时表方法有: 1)创建索引:在ORDER BY或者GROUP BY列上创建索引; 2)分拆很长:一般情况下,TEXT、BLOB,大于512字节字符串,基本上都是为了显示信息,而不会用于查询条件

2.6K80

mysql由于临时表导致IO过高性能优化过程分享

,将第一条sql结果使用in操作拼接到第二条sql SELECT DISTINCT g.*, cp.name AS cp_name,c.name AS category_name,t.name AS...BY DISTINCT(price) SELECT语句中指定了SQL_SMALL_RESULT关键字 SQL_SMALL_RESULT意思就是告诉MySQL,结果会很小,请直接使用内存临时表,不需要使用索引排序...直接使用磁盘临时表场景 表包含TEXT或者BLOB; GROUP BY 或者 DISTINCT 子句中包含长度大于512字节; 使用UNION或者UNION ALL时,SELECT子句中包含大于...常见避免临时表方法有: 创建索引:在ORDER BY或者GROUP BY列上创建索引; 分拆很长:一般情况下,TEXT、BLOB,大于512字节字符串,基本上都是为了显示信息,而不会用于查询条件...常见优化SQL语句方法如下: 1)拆分SQL语句 临时表主要是用于排序和分组,很多业务都是要求排序后再取出详细分页数据,这种情况下可以将排序和取出详细数据拆分成不同SQL,以降低排序或分组时临时表大小

3K40

sql学习

sql对大小写不敏感 SQL SELECT语句 SELECT语句用于从一个表中选取数据,结果被存储在一个结果表中 语法: select 列名称 from 表名称 从表名称对应数据库表中取出列名称所对应内容...SQL SELECT DISTINCT语句 关键词DISTINCT用于返回唯一不同值 语法:SELECT DISTINCT 列名称 FORM 表名称 SQL WHERE子句 where子句同于规定选择标准...= 不等于(用于某些版本SQL中) > 大于 < 小于 >= 大于等于 <= 小于等于 BETWEEN 在某个范围内 LIKE 搜索某种模式 一般条件值周围都是用是单引号,SQL使用单引号来环绕文本值...() 返回两个日期之间时间 CONVERT() 用不同格式显示日期或时间 SQL NULL值 NULL值是遗漏未知数据,默认,表可以存放NULL值。...使用IS NULL来查找NULL值,使用IS NOT NULL读取不带有NULL值操作符。 SQL函数 SQL拥有很多可用于计数和计算内建函数。

4.6K30

SQL语句进行数据库查询(简单查询)

目录 前言 简单查询 1.查询数据表中全部信息 2.查询数据表中部分属性 3.用中文显示需要查询属性....>80--只有满足条件数据才会被显示出来 (2)查询选修了课程号为”002”,且成绩大于80学生学号. select Sno as 学号 from sc where Cno='002'and Grade...格式: 1.作用于单列 select distinct name from A 2.作用于多 select distinct name, id from A 检索出学生已选课程课程号,要求显示课程不重复...COUNT()函数允许您对表中符合特定条件所有行进行计数。 COUNT()函数返回由SELECT语句返回结果集中行数。COUNT()函数计算中包含NULL和非NULL值行,也就是用计算所有行...Cno as 课程号,count(*) as 学生人数 from SC group by Cno--按课程号分类 运行结果: 好了,今天SQL Server知识就分享到这里了.下一篇会将稍微复杂一些查询

2.7K20

SQL基础编程_如何学编程

综合条件筛选 6.SQL常量 7.distinct (把结果中重复行删除) 8.函数 (1) 聚合函数: `sum()` ——求和函数 `count()`——计数函数 `avg()`——平均值函数...`min()| max()`——最小最大值函数 `group by `——分组函数 (2) 显示方式控制函数: `round`——控制保留位小数结果 `concat`——把分开合成在一个结果中...= 1) and (not (h.Hero like 'A%'))生命值大于500且攻击速度不是1且名称不以A开头 6.SQL常量 select语句不需要from就可以独立成句显示常量,而且也能进行四则运算...by 有超过百万订单月 代码结果: 有超过百万订单月 1 2 3 4 5 6 11 12 注意:如果放在多个之前,则会只删除所有内容都同时重复行,比如以下代码: select distinct...h1.Hero='Nesus'); 代码结果: (2).from子查询 (与where子查询类似,这次是在from中嵌套一个sql语句) 举个栗子:在英雄数据库中找到比Nesus快英雄中魔法值大于

1.6K30

教育行业案例:如何分析​复购用户?

该业务分析要求查询结果中包括:日期(说明是按购买日期来汇总数据)、当日首次购买用户数、此月复购用户数,第N月复购用户数。 1.当日首次购买用户数 先来看当日首次购买用户数这一如何分析出?...此月复购用户数:在本月内购买大于等于两次课程用户。...(1)这涉及到计算两个日期之间差值,《猴子从零学会sql》里讲到对应单函数是timestampdiff。下图是这个函数用法。 select a....,并计数就是此月复购用户数 count(distinct case when 时间间隔<=1 then 用户id else null...2.灵活使用case来统计when 函数与group by 进行自定义联表统计。 3.遇到只有一个表,但是需要计数时间间隔问题,就要想到用自联结来求时间间隔。

1K10
领券