MySQL 基础+高级篇- 数据库 -sql -尚硅谷(基础篇)
2020-03-16 23:50 cascle 阅读(1006) 评论(0) 编辑 收藏 举报MySQL初级
第一章.为什么要学习数据库
实现数据持久化
使用完整的管理系统统一管理,易于查询
第二章.数据库相关概念
DBMS:Database Management System。数据库时通过DBMS创建和操作的容器
DB:Database,存储数据的仓库。保存了一系列有组织有格式规范的数据
SQL:Structure Query Language。专门与数据库管理系统通信的语言
SQL优点:
第三章.数据库存储数据的特点
1.数据放到表里,表放到库里
2.一个数据库里可以有多张表,每个表有自己的名字,名字唯一
3.表具有特性,定义了数据在表中如何存储。表类似类
4.表由一个或多个列组成,叫做字段。列类似属性
5.表中数据按行存储。行类似对象
第四章.初识MySQL
MySQL产品介绍
DBMS:分两类,基于共享文件系统的和基于C/S架构的
MySQL基于客户端服务端架构
MySQL产品安装
安装好后要配置
MySQL产品卸载
控制面板里卸载,安装路径里删除,ProgramData里删除,删除注册表(预防配置影响新安装的软件),删除Application Data里的MySQL
配置文件:my.ini
MySQL服务的启动和和停止
是个daemon,各个系统里找启动/停止服务的办法
windows:net stop 服务名。star启动
MySQL服务的登录和登出
mysql -h 地址 -P 端口号 -u 用户 -p 密码。选型和参数之间可以没有空格
exit退出
配置环境变量:
把安装路径bin加入Path环境变量
MySQL的常见命令和语法规范
show databases(;或者\g):显示数据库
use 数据库名;:使用进入数据库
show tables;:显示当前数据库里的表名
show tables from 数据库:显示某个数据库里的表名
select database();:显示当前位于哪个数据库
desc 表名;:显示表的schema
查看MySQL版本:
select version();
mysql --version
mysql -V
MySQL语法规范
1.不区分大小写,关键字大写,表名,列名小写
2.每条命令分号结尾
3.每条命令根据需要缩进换行。建议关键字一行
4.注释是#和--空格 来当行注释,/* */多行
图形界面客户端:
SQLyog和Navicat
第五章.DQL语言的学习
myemployees库的四张表
1.departments:
2.employees:
3.jobs:
4.locations:
基础查询
select 查询列表 from 表名
查询列表:表中字段,常量,表达式,函数
查询结果是虚拟表格
1.查询表格中的单个字段
select last_name from employees;
2.查询表格中的多个字段
select last_name,salary,email from employees;
3.查询表格中的所有字段
select * from employees;
细节补充:
use myemployees;
``着重号代表不转义,关键字也可以在里边使用
查询常量:
select 100;结果的字段名是100,即常量
查询表达式:
select 100*98;结果的列字段名是“100*98”
查询函数:
select database();结果列的字段名是database()
结果列起别名:
方式一:
select 100*98 as result from employees;
好处:1.结果清晰2.别名区分重名字段,比如自连接
方式二:
select last_name 姓 from employees;省略as
如果别名有空格,用着重号包起来
去重:
select distinct departmeng_id from employees;
+号的作用:
列合并用contat函数而不是+号
+号只能做数值运算符,不能用在非数值字符上,否则字符被转换成0;只有+的操作数有一个是null,结果就是null
concat作用:
字符连接用concat
select concat(last_name,first_name) as 姓名 from employees;
ifnull:
如果是第一个参数是null,返回第二个参数。可以用来在做concat的时候修饰可能是null值的列
条件查询
select 查询列表 from 表名 where 【筛选条件】;
筛选条件分类:
1.按条件表达式筛选:条件运算符,> < = != <> >= <=
select * from from employees where salary > 12000;
2.按逻辑表达式筛选:逻辑运算符,&& || ! and or not,连接条件表达式
select last_name, salary from employees where salary > 1000 && salary <= 20000;
3.模糊查询:like, between and,in,is null
like:不是完全匹配,包含部分字符
select * from employees where last_name like \'%a%\';通配符用%
一般和通配符搭配使用。
%:任意多个字符,可以是0个
_:任意单个字符
\为转义
\'_$_\' escape \'$\'表明转义字符为