MySQL基础知识点总结(新手入门)

SQL语句分类:
DDL:数据定义语言,用来定义数据库对象:库、表、列等
DML:数据操作语言,用来定义数据库中数据的增删改
DCL:数据控制语言,用来定义访问权限和安全级别
DQL:数据查询语言,用来查询数据


MySQL语句不区分大小写,不见分号;不执行

查看MySQL有哪些数据库
show databases;

使用某个数据库
use databases;

创建数据库
create databases 数据库名;

删除数据库
drop database 数据库名;

查看所有数据库
show databases;

查看数据库下有哪些表?
show tables from 数据库名;

查看当前使用的是哪个数据库
select databse();

修改表结构
增加一列
alter table 表名 add 列名 数据类型;

修改列名
alter table 表名 旧列名 新列名 数据类型;

删除列
alter table 表名 drop 列名;

修改表名
alter table 表名 rename 新表名;

复制表结构
create table 新表名 like 旧表名;

复制表结构+内容
create table 新表名 select * from 旧表名;

不看表中数据,只看表结构
desc 表名

简单查询
select 字段名 from 表名;

查询两个或多个字段(中间用逗号,隔开)
select name,sal from emp;

给查询的列起别名(as 关键字或者空格)
    只是将显示的查询结果修改,原列名不变,select永远不会进行修改操作,只负责查询


select sal*12 as yearSal from emp;
select sal*12 yearSal from emp;
假设别名里有空格(用单引号' ' 括起来    '别   名')

注意:在所有的数据库当中,字符转统一用单引号括起来,单引号是标准。双引号在Oracle数据库中用不了,但是在MySQL可以使用

字段可以进行加减乘除运算

不等于 !=或者<>

在....之间
between...and... 包括两端的值,闭区间

查询某字段为null的元素  is null
查询某字段不为null的元素  is not null

and和or同时出现:
and优先级较高,如果让or先执行,加()

in包含(相当于多个or)   in不是区间,是具体的值
查询工作岗位是A和B的员工
select * from emp where job = 'A' or job = 'B';
=select * from emp where job in ('A','B');

模糊查询
%表示任意多个字符
_表示任意一个字符
找出名字中带有A的
select name from emp where name like '%A%';
找出名字第二个是A的
select name from emp where name like '_A%';

排序order by
asc 升序        desc降序
查询员工名字和薪资,工资按升序排,若工资一样,按名字升序排
select name,sal from emp order by sal asc,name sac;  sal在前起主导,当相等时才后面name
找出工资在1250-3000之间的员,工资按降序排列
select name,sal from emp where sal between 1250 and 3000 order by sal desc;  

单行处理函数
转换小写 lower()
转换大写upper()
取子串substr(被截取字符串,开始下标,截取长度)  开始下标从1开始
取长度length()
去空格trim()
四舍五入round(数,0)  0保留整数   1保留1位小数  2保留两位小数 -1十分位
随机数rand()

null只要参数运算,最终结果一定为null,为了避免这个现象,需要使用ifnull函数(不同列之间进行运算)
ifnull函数用法(数据,被当做哪个值)
comm补助   当补助为null,指定为0
查询员工这个月工资(基本工资+补助)
select name,sal+ifnull(comm,0) from emp;

case...when...then...when...then...else...end
当员工岗位为A时,工资上调10%,当员岗位为B时,工资上调50%,其他正常
select name,job,sal as oidSal,(case job when 'A' then sal*1.1 when 'B' then sal*1.5 else sal end)as new Sal from emp;

分组函数(多行处理函数)
多行处理函数特点:输入多行,最终会输出一行
count()计数

sum()求和

avg()平均值

max()最大值

min()最小值  
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值