文章目录
前言
尚硅谷mysql笔记
select基本语句
一、SQL概述
不同的数据库生产厂商都支持SQL语句,但都有特有内容
SQL的分类
- DDL(Data Definition Languages、数据定义语言),这些语句定义了不同的数据库、表、视图、索引等数据库对象,还可以用来创建、删除、修改数据库和数据表的结构。
主要的语句关键字包括 CREATE 、 DROP 、 ALTER、RENAME、TRUNCATE - DML(Data Manipulation Language、数据操作语言),用于添加、删除、更新和查询数据库记录,并检查数据完整性。
主要的语句关键字包括 INSERT 、DELETE 、 UPDATE 、 SELECT 等。SELECT是SQL语言的基础,最为重要。 - DCL(Data Control Language、数据控制语言),用于定义数据库、表、字段、用户的访问权限和 安全级别。
主要的语句关键字包括 GRANT (授权)、 REVOKE (权限撤销)、 COMMIT(提交) 、 ROLLBACK (回滚)、 SAVEPOINT (保存点)等。
因为查询语句使用的非常的频繁,所以很多人把查询语句单拎出来一类:DQL(数据查询语言)。
还有单独将 COMMIT 、 ROLLBACK 取出来称为TCL (Transaction Control Language,事务控制语言)。
二、SQL规则,规范
2.1 基本规则
- sql可以一行,可以多行,必要时可用缩进。
- 每条命令以;结尾 ,或者\G,\g。(图形化工具\G\g可能不行)
- 关键字不能缩进换行
- 标点符号
2.2 SQL大小写规范(建议遵守)
1.mysql在Windows下不敏感
2.mysql在Linux下大小写敏感
数据库名、表名、表的别名、变量名是严格区分大小写的
关键字、函数名、列名(或字段名)、列的别名(字段的别名) 是忽略大小写的。
建议统一规范:
小写:数据库名、表名、表别名、字段名、字段别名
大写:关键字、函数名、绑定变量
2.3 注释
单行注释:-- 、#
多行注释:/* */
2.4 命名规则(回头补)
三、导入现有的数据
方式一 source 路径(路径不能有中文和空格)
方式二 图形化界面工具
四、查询SELECT
查漏补缺:
dual(伪表) SELECT 1+1,2*3 FROM dual;
AS(全称alias别名)也可以直接用“”引起来。
DISTINCT 去重,多个字段不可以单个字段去除。
空值null:
- 不等同于0,‘’,‘null’
- 参与运算的情况下结果一定为null
着重号 `` 当关键字不作为关键字存在时要用着重号
可补充常量作为单列字段
显示表结构
DESCRIBE employees;
DESC employees;
过滤条件 WHERE 放FROM后面
五、运算符
5.1 算术运算符
+ - * / div % mod
加减运算符
SELECT 100 + '1' FROM dual;
# 结果是101,会将字符串转化为数值(隐式转换)
# 在Java中,结果是1001,”+“起连接作用。
SELECT 100 + 'a' FROM dual;
#结果为100,此时'a'看作0处理。(转化不了)
乘除运算符
除法分母为零,结果为空值
取模 % mod
被模数为负,结果为负