![]()
1、数据库的介绍
好处:持久化存储、读写速度极高、
保证数据的有效性、对程序支持下非常好,容易拓展
2、数据库的类型
关系型数据库:
优点:容易理解,二维表结构、使用方便、支持事务等复杂的数据操作功能
MySQL、Oracle、SQL server
核心元素:数据行、数据列、数据表、数据库
非关系型数据库:
优点:数据间无关系,容易拓展、结构简单,读写性能高、
无需事先建立字段,随时可以存储自定义的数据格式
MongoDB、Redis
3、常用入门的操作命令
mysql -uroot -p密码 进入root账号
status; 查看数据状态信息
exit、quit 退出数据库连接
show databases; 显示所有的数据库
create database data charset=utf8; 新创建一个数据库
use 数据库名 选择要编辑的数据库
select database(): 查看当前在那个数据库下
show tables; 显示数据库下所有的表
\c 当输入有误时,\c则取消改行命令
source 数据库文件名.sql 导入数据库到mysql中
desc '表名'; 查看表结构信息
4、SQL语句主要分为:
DQL:数据查询语言
DML:数据操作语言,增删改
DDL:数据定义语言,对数据库、表的管理等,如create、drop
TPL:事务处理语言,对事务进行处理
DCL:数据控制语言,进行授权与权限回收
CCL:指针控制语言,通过控制指针完成表的操作
DQL(查):
select id,course,address from course;
select name from student where id = 14;
逻辑运算符:and、or、not
select name,age,description as des from student where age<18 or sex=2;
范围运算符:
select class,name,age,sex from student where not age between 18 and 22;
比较运算符:=、<> !=、>=、<=、>、<
in运算符(多条件值查询):
select name,class,age from student where class in (304,305,306)
模糊查询:% 匹配任意多个字符、_ 匹配任意一个字符
select * from student where name LIKE '%林%';
聚合运算
AVG 返回指定列的平均值
COUNT 返回指定列中非NULL值的个数
MIN 返回指定列的最小值
MAX 返回指定列的最大值
SUM 返回指定列的所有值之和
select count(id) from student where class="305";
select avg(age) from student where class="302";
分组查询(group by子句, 可以对表进行分组,常常与聚合函数一起使用)
select age,count(name) from student group by age;
结果排序
ASC表示升序(从小到大),为默认值,
DESC为降序(从大到小)
以下为多字段排序:
select id,name,sex from student order by age desc,id asc limit 100;
limit后面跟着两个参数,第一个参数表示取数据的开始下标[在表中下标从0开始],第二个参数表示限制结果的数量,主要用于项目开发中的分页功能
select * from student limit 6,3; // 等同于 limit 6,3
DML(增删改):
增(,()可添加多个)
insert into 表名 (字段1,字段2,字段3,....) values (字段值1,字段值2,字段值3,....);
insert into 表名 values (字段值1,字段值2,字段值3,....);
改:update 表名 set 字段1=字段值1,字段2=字段值2 where 条件
删:delete from 表名 where 条件
DDL:
drop table 表名 删除整个表
drop table student; 删除学生表
delete from table 删整个表的内容
truncate table 清空/重置表
create database 数据库名 charset=utf8; 创建数据库
drop database 数据库名 删除数据库[一定要谨慎操作]
posted @
2019-03-06 20:44
pythonernoob
阅读(
103)
评论()
收藏
举报