Myqsl 知识点总结
一. 数据库相关概念
- DB:数据库,保存一组有组织的数据容器
- DBMS:数据库管理系统 又称 数据库软件(产品)用于管理DB中数据
- sql 结构化查询语言 用于和DBS通信的语言
二. mysql 常见命令
1. 查看当前所有数据库
2. 打开指定库
3.查看当前库所有表
4.查看其他库所有表
5.创建表
6.查看表结构
7.查看服务器版本
方式一:登录到mysql服务端
方式二:没有登陆到mysql服务端
mysql 的语法规范
1.不区分大小写,但建议关键字大写,表名,列名小写
2.每条命令用分 结尾 (有时g)
3.每条命令根据需要,可以进行缩进 或换行
4.注释
单行注释:#注释文字
单行注释:– 注释 (–后面必须有个空格)
多行注释: /注释文字/
进阶1: 基础查询
语法:
特点:
- 查询列表可以是 表中字段,常量值,表达式,函数
- 查询结果是一个虚拟表格
1.查询表中单个字段
2.查询表中多个字段
3.查询表中所有字段
注意:
1.操作前先use该库
2.着重 “可以方便标识字段
4.查询常量值
5.查询表达式
注:字符型和日期型必须用单引
6.查询函数
7.起别名
#方式一(使用as)
#方式二(使用空格)
1.便于理解
2.如果查询的字段有重名情况,使用别名可以区分开来
案例:查询salary,显示结果为out put
注意:此时out put中间有空格,建议加上双引
8.去重(字段前加DISTINCT)
案例 查询员工表中涉及到的所有部门编
9.+ 的作用
concat 拼接
案例:查询员工名和姓连接成一个字段,并显示为 姓名
补充
ifnull:判断字段或表达式是否为null,如果为null,返回指定值
select ifnull (commission_pct,0 ) from employees;
isnull : 判断某字段或者表达式是否为null,是返回1,否返回0
案例
显示departments的结构,并查询其中全部数据
显示employees中全部job_id(不能重复)
显示出表employee的全部列,各个列之间逗 链接,列头显示成out_put
进阶2:条件查询
语法:
分类
- 按条件表达式筛选 条件运算符: < > = <> >= <=
- 按逻辑表达式筛选 逻辑运算符: && || ! and or not
- 模糊查询 like between and in is null
一.按条件表达式筛选
案例1:查询工资大于12000的员工信息
案例2:查询部门编 不等于90 的员工名和部门编
二.按逻辑表达式筛选
案例1:查询工资在10000到20000之间的员工名,工资以及奖金
案例2:查询部门编 不是在90–110之间,或者工资高于15000的员工信息
三.模糊查询
like特点:
1.一般和通配符搭配使用
通配符
% 任意多个字符
_ 任意单个字符
1.like
案例1:查询员工名中包含a的员工信息
案例2.查询员工名中第三个字符为n,第五个字符为l的员工名和工资
案例3.查询员工名中第二个字符为 _ 的员工名
#(’_KaTeX parse error: Expected group after ‘_’ at position 1: _’ ESCAPE ‘’ 即任意字符都可以用来表示转义)
2.between and
/*
1.使用between and 可以提高语句简洁度
2.包含临界值
3.两个临界值不要调换顺序
*/
案例1:查询员工编 在100-120之间的员工信息
3.in
含义:判断某字段的值是否属于in列表中的某一项
特点
1. 使用in提高语句简洁度
2. In列表的值类型必须一致或兼容
案例1:查询员工工种编 是IT_PROG,AD_VP,AD_PRES中的一个的员工名和工种编
4.is null
= 或<> 不能用于判断null值
is null 或is not null 可以判断null值
案例1:查询没有奖金的员工名和奖金率
#is null PK <=>
IS NULL : 仅仅可以判断null值,可读性较高,建议用此
<=> : 既可以判断null值,又可以判断普通的数值,可读性较低
案例:
1.查询员工 为176的员工姓名和部门编 和年薪
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!