作为测试-应该知道的sql语句

目录

只有在实战中  才能展示真正的技术

一、登录数据库:

1):命令行:输入命令,然后输入root账号的密码。

2):工具

二、操作库:创建、显示、删除数据库

1):创建数据库

2):显示数据库

3):删除数据库

4):其他操作

三、操作表:使用、创建、删除、修改、显示表

1):创建表

2):删除表

3):显示表

4):修改表名

四、操作数据:增、删、改、查(重点中的重点)(重点)

1):插入表中数据

2):删除表中数据

3):修改表中数据

4):查询表中数据(后面详细说明)

5):*增加表中字段

6):*删除表中字段

7):*修改表中字段

五、select 查询详解

1):左连接( LEFT JOIN),体现在from语法后面

2):右连接(RIGHT JOIN),体现在from语法后面

3):内连接(INNER JOIN),体现在from语法后面

4):分组查询(GROUP BY)


一、登录数据库:

1):命令行:输入命令,然后输入root账号的密码。

mysql -uroot -p

结果:

ps:当出现“zsh: command not found: mysql”时应急解决办法:

alias mysql=/usr/local/mysql/bin/mysql

再次输入 “mysql -uroot -p”即可

2):工具:DBeaver

下载地址:Download | DBeaver Community

二、操作库:创建、显示、删除数据库

1):创建数据库

create database 【库名】;

2):显示数据库

show databases;    # 全部数据库
show databases like 【库名】/'%【库名】%';   # 定向查询

3):删除数据库

drop database 【库名】;

4):其他操作

use oldboy;          # 连接数据库
select version();    #查看数据库版本
select user();       #查看数据库用户
select now();        #查看当前时间

三、操作表:使用、创建、删除、修改、显示表

1):创建表

create table test02(
id int(8),
name char(20),
sex int(4) );

2):删除表

drop table test02;

3):显示表

show tables;

4):修改表名

rename table test to test01;

四、操作数据:增、删、改、查(重点中的重点)(重点)

1):插入表中数据

单条数据:
insert into test values(1001 ,'fangbu', 16);
多条数据:
insert into test values(1001 ,'Tangbu', 16),(1002,'Wang', 17),(1002 ,'Jack', 17),(1003 ,'Tom', 16);

2):删除表中数据

delete from test where id=1001;

3):修改表中数据

update test set name='FangBu' where id=1001;

4):查询表中数据(后面详细说明)

select * from test;

5):*增加表中字段

alter table test add passtest int(4);

6):*删除表中字段

alter table test  drop column passtest;

7):*修改表中字段

alter table 表名  change 旧得字段  新的字段 字段的数据类型;
alter table ta0 change unames uname varchar(20);

五、select 查询详解

在设计数据库时,经常会出现分表的情况,原因是减少重复信息存储节省空间。

查询语句是SQL语句比较复杂的语句,基本结构可描述为:

书写顺序
select distinct * from '表名' where '限制条件'  group by '分组依据' having '过滤条件' order by  limit '展示条数'
执行顺序
from       -- 查询
where      -- 限制条件
group by   -- 分组
having     -- 过滤条件
order by   -- 排序
limit      -- 展示条数
distinct   -- 去重
select     -- 查询的结果
正则:select * from emp where name regexp '^j.*(n|y)$';
集合查询:max 、min 、avg 、sum 、count 、group_concat 。
内连接:inner join
左连接:left join
右连接:right join
全连接: 左连接 union 右连接
replace 替换

拼接:concat、concat_ws、group_concat

准备数据:

来几个链接:

学生成绩表

MySQl查询语句大全

mysql面试题(学生表_课程表_成绩表_教师表)

练习:

1):左连接( LEFT JOIN,体现在from语法后面

select * from Student s left join Course c on c.CID=s.SID;

2):右连接RIGHT JOIN,体现在from语法后面

select * from Student s right join Course c on c.CID=s.SID;

总结:不管是左连接还是右连接,表的显示顺序和【from】后面的顺序一致,显示数据数量根据基础表的数量而定,即left join后面的表,和right join前面的表。

3):内连接(INNER JOIN),体现在from语法后面

select * from Student s inner join Course c on s.SID=c.CID;
等价于
select * from Student s,Course c where s.SID=c.CID;

4):分组查询(GROUP BY)

select class_id, count(*) from statistics GROUP BY class_id;

 结果:

 5):条件查询(WHERE)

select * from test01 where id=1001;

结果: 

6):排序函数(ORDER BY)

select * from test01 order by id desc;

结果:

 其中order by默认是生序(asc),倒序使用desc。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值