导图社区 数据查询语言
数据查询语言,负责进行数据查询而不会对数据本身进行修改的语句,这是最基本的SQL语句。保留字SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字有FROM,WHERE,GROUP BY,HAVING和ORDER BY。这些DQL保留字常与其他类型的SQL语句一起使用。
财报学习-利润表,有营业收入Operating income、营业利润(亏损以“-”号填列)Operating profit、利润总额(亏损总额以“-”号填列Total profit、净利润(净亏损以“-”号填列)Net profit。
《深入浅出统计学》-几何分布、二项分布及泊松分布。花最少的时间,弄懂数据分析里面的统计学知识。这是第7部分,求特殊概率分布~
产品经理 ,精益产品。本思维导图主要内容有:5个关键要素定义了PMF的问题、精益产品开发流程(六步)、三种策略、实现标准(临界点)参考。
社区模板帮助中心,点此进入>>
互联网9大思维
组织架构-单商户商城webAPP 思维导图。
域控上线
python思维导图
css
CSS
计算机操作系统思维导图
计算机组成原理
IMX6UL(A7)
考试学情分析系统
数据【查询】语言 DQL Data Query Language
负责进行数据查询而不会对数据本身进行修改的语句,这是最基本的SQL语句。保留字SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字有FROM,WHERE,GROUP BY,HAVING和ORDER BY。这些DQL保留字常与其他类型的SQL语句一起使用。
简单查询
SELECT
1、查询表中全部数据
SELECT * FROM 表名
應該盡量避免使用 SELECT *,一次取得整張資料表會比較耗費系統資源
2、查询指定列
SELECT 主要由兩部分構成 第一部分是要 "拿什麼" 資料 (若有多項用逗號隔開); 第二部分則為 "從哪拿"。
SELECT 列名1, 列名2, ... FROM 表名;
3、别名
使复杂列名/表名更易读,结果更直观 alias_name
SELECT 列名 AS '别名' FROM 表名
SELECT 列名1 AS 别名, 列名2 AS 别名 FROM 表名 AS 表别名;
AS 关键字不可以省略SQL8
4、去重复记录
DISTINCT
当DISTINCT 后面出现多个列时,只有当多个列的数据都重复才叫重复数据(最简单的避免“同名却不同性”也被判定重复。
SELECT DISTINCT 列名1,列名2 ... FROM 表名
举例
SELECT DISTINCT User_name AS '用户名', Mobile AS '手机号', PASSWORD AS '密码' FROM STUDENT2;
+-----------+-------------+------------------+ | 用户名 | 手机号 | 密码 | +-----------+-------------+------------------+ | Jack | 18612252687 | 123456 | | Kitty | 16600095289 | 123456776 | | Jack1 | 18612252687 | 123456 | | Xiaoming | 19289179 | Xiaoming@123.com | | Xiaoming | 19289179989 | 235678 | +-----------+-------------+------------------+
5、查询结果参与运算
查询的列可以做简单+-*/运算。查询结果只会影响展示,不会影响表中数据
SELECT 列名1+固定值 FROM 表名
SELECT 列名1+列名2 FROM 表名
1、增加字段 ALTER ADD( 2、表中加列和数据类型,TABLE要写 3、INSERT INTO 增一行,增一列像“改”一列UPDATE SET 4、增一行值INSERT INTO () VALUES(), 改有的 SET 列名=‘’
NULL 和任何值做任何运算,结果都是NULL
条件查询
使用 WHERE 关键字搭配运算符取出“符合条件”的记录
SQL 有 3 種類型的運算符,分別是算數、邏輯及比較
比较 Comparison Operators
= 等于 赋值 / 判断
文本值用单引号,数值不需要
SELECT * FROM Student WHERE User_name='Xiaohua'
SELECT 列名 FROM 表名 WHERE 列 运算符 值
> 大于
SELECT * FROM Student WHERE Age>30;
< 小于
>= 大于等于
<= 小于等于
<>或者 != 不等于
SELECT * FROM Student WHERE Age!=30;
逻辑 Logical Operators
把两个或多个条件结合起来
AND
如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。
OR
如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。
使用or连接多个条件 用IN()
AND 和 OR 结合,使用圆括号来组成复杂的表达式
NOT
( !)
查询id不是1或3或5的学生
SELECT * FROM User WHERE Id NOT IN (1,3,5)
算数 Arithmetic Operators
乘*
除/ 8/5 =1.6
余% 8%5-3"
指定范围内查询 in
相当于使用or连接多个条件
SELECT 列名 FROM 表名 WHERE 字段 in (数据1, 数据2...);
in里面的每个数据都会作为一次条件,只要满足条件的就会显示。
SELECT* FROM Users WHERE id IN(1,3,4)
查询id是1或3或4的用户
范围
BETWEEN AND
BETWEEN 值1 AND 值2,表示从值1到值2范围,包括开头值又包括结尾值。
SELECT * FROM Student2 WHERE Payment BETWEEN 20000 AND 30000;
会选择介于两个值之间的数据,这些值可以是数值、文本或者日期(要注意包含或者半包含)
模糊查询like
SELECT * FROM 表名 WHERE 列名 like '通配符字符串'; 满足通配符字符串规则的数据就会显示出来。
MySQL通配符有两个: %: 表示0个或多个字符(任意个字符) _: 表示一个字符
SELECT * FROM Student2 WHERE User_name like '%tt%';
得力笔记本 %笔记本 笔记本电脑 笔记本% 商务笔记本 %笔记本 商务笔记本电脑 %笔记本%
为空查询 is null
查询某个字段为空(null)的数据
不是使用=null(null和任何值都不相等),而是使用is null来进行判断
SELECT * FROM User WHERE
select * from student3 where english is null