MySql数据库基本语法(DQL,DML,DDL,TCL,DCL),CRUD操作

表:table是数据库的基本组成单元,所有的数据都以表格的形式组织,目的可读性强;一个表包括行和列:行被称为数据/记录;列被称为字段
每一个字段应该包括哪些属性?
字段名,数据类型,相关的约束

DQL(数据查询语言):查询语句,凡是select语句都是DQL
DML(数据操作语言):insert,delete,update对表中的数据进行增删改
DDL(数据定义语言):create,drop,alter对表结构的增删改
TCL(事务控制语言):commit提交事务,rollback回滚事务
DCL(数据控制语言):grant授权,revoke撤销权限等
CRUD操作:Create(增) Retrieve (检索) Update(修改) Delete(删除)

导入数据:dos命令窗口
第一步:登录mysql数据库管理系统
mysql -uroot -p
第二步:查看有哪些数据库
show databases; (这个不是SQL语句,属于MySQL的命令)
第三步:创建属于自己的数据库
create database 数据库名(bms); (这个不是SQL语句,属于MySQL的命令)
第四步:使用(bms)数据
use 数据库名(bms); (这个不是SQL语句,属于MySQL的命令)
第五步:查看当前使用的数据库中有哪些表?
show tables; (这个不是SQL语句,属于MySQL的命令)
show tables from 数据库名;查看某个数据库中的表
第六步:初始化数据
source 文件路径
当一个文件的扩展名是.sql,并且该文件中编写了大量的sql语句,这种文件被称为sql脚本;直接使用source命令可以执行sql脚本,sql脚本中的数据量太大的时候无法打开,使用source命令完成初始化
删除数据库:drop database 数据库名
查看表结构:desc 表结构名;
查看表:select * from 表结构名
常用命令:select database(); 查看当前使用的是哪个数据库
select version(); 查看mysql的版本号
\c 结束一条语句
exit 退出mysql
查看创建表的语句:show create table 表结构名;

简单的查询语句(DQL)
语法格式:select 字段名1,字段名2,… from 表名;
任何一条sql语句都以";"结尾
sql语句不区分大小写
字段可以进行数学运算
sql语句的字符串用单引号括起来
给查询结果的列表重命名?
select ename,sal*12 as yearsal from 表名
查询所有字段?
select * from 表名;
条件查询:select 字段,字段… from 表名 where 条件;
执行顺序:先from,再where,再select,最后order by

排序:select 字段… from 表名 order by 字段 (asc/desc),字段 (asc/desc); 只有前面的字段相等时(即无法完成排序时),才能用得上后面的字段
默认是升序排序,如何指定升序或降序?
asc表示升序,desc表示降序
单行处理函数:输入一行输出一行
ifnull() 空处理函数:ifnull(可能为null数据,被当做什么处理)
所有数据库都规定:在数学表达式中,有NULL进行运算,结果都为NULL

分组函数/多行处理函数?
count计数 sum求和 avg 取平均 max 最大值 min最小值
所有的分组函数(只有5个)都是对“某一组”数据进行操作的;多行处理函数:输入多行,输出一行
分组函数自动忽略NULL
SQL语句规定分组函数不能直接用在where子句中,因为group by 是在where之后才能执行
count(*)和count(具体的某个字段)的区别:前者不是统计某个字段中数据的个数,而是统计总记录条数;后者表示统计某字段中不为NULL的数据总数量
分组函数也可组合使用
group by:按照某个字段或某些字段进行分组
having:对分组之后的数据进行再次过滤
例如:select max(sal) from 表名 group by job;

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值