热饭面试复习:【sql相关】-高级 (上)

简介: 热饭面试复习:【sql相关】-高级 (上)

sql作为一门古老的语言,学习起来性价比超高!几十年都不用更新!本节内容为进阶高级复习题!


创建数据库/表

create database 数据库名
create table 表名 (
字段1 varchar(255) 约束,
字段2 类型 约束,
primary key (字段1)
...
)


约束

not null 不能为null
unique 唯一
primary key 主键
foreign key 外键
default 默认
check 选择


删除数据库/表

drop table 表名
drop database 数据库名
只清空:
delete from 表
truncate table 表


返回前xxx条数据

select top 5 字段 from 表
select 字段 from 表 limit 5


like 模糊搜索

select 字段 from 表 where 字段2 like "%结尾"
%代表任意字符
not like 代表不包含这个模糊搜索


通配符

% 代表0个或多个字符
_ 代表一个字符
REGEXP [1,2,'a'] 代表内部任何单一字符
REGEXP ^[A-H] 不包含任何单一大写字母
REGEXP ![^字符列表] 不包含任何单一字符


IN 选取多个规定内的

select 字段 from 表 where 字段 in (值1,值2)
not in 不在


between 在一个区间内选择

select 字段 from 表 where 字段 between 值1 and 值2
not between 不属于


别名 as

select 字段 as 新字段名 from 表
select 字段 from 表 as 新表名


多表链接 join on

内链接 inner join

image.png

select * from 表1 inner join 表2 on 表1.字段1 = 表2.字段2


左右链接 left/right join

image.pngimage.png

select * from 表1 lect/right join 表2 on 表1.字段1=表2.字段2


完全链接 full join

image.png

select * from 表1 full join 表2 on 表1.字段1=表2.字段2


outer join

可以用在左右全中,如left outer join,可以返回不包含的内容


join去重

image.png

在 on 后加where 
如 select * from 表1 left join 表2 on 表1.字段1=表2.字段2 where 表2.字段 is null


合并查询结果 union

select * from 表1 union select * from 表2


允许重复合并结果 union all

select * from 表1 union all select * from 表2


复制数据到其他表

create table 新表 as select * form 旧表
insert into 新表 select * from 旧表
insert into 新表 (字段名) select * from 旧表


创建索引 create index

create index 索引名 on 表名 (字段名-可不写)
创建不允许值重复的唯一索引
create unique index 索引名 on 表名


删除索引 drop index

alert table 表名 drop index 索引名
相关文章
|
22天前
|
SQL 数据库 C#
C# .NET面试系列十一:数据库SQL查询(附建表语句)
#### 第1题 用一条 SQL 语句 查询出每门课都大于80 分的学生姓名 建表语句: ```sql create table tableA ( name varchar(10), kecheng varchar(10), fenshu int(11) ) DEFAULT CHARSET = 'utf8'; ``` 插入数据 ```sql insert into tableA values ('张三', '语文', 81); insert into tableA values ('张三', '数学', 75); insert into tableA values ('李四',
84 2
C# .NET面试系列十一:数据库SQL查询(附建表语句)
|
22天前
|
SQL 关系型数据库 MySQL
MYSQL-SQL语句性能优化策略以及面试题
MYSQL-SQL语句性能优化策略以及面试题
46 1
|
20天前
|
XML Android开发 数据格式
ConstraintLayout 2,Android高级开发面试
ConstraintLayout 2,Android高级开发面试
|
22天前
|
SQL 存储 数据可视化
10个高级的 SQL 查询技巧
10个高级的 SQL 查询技巧
|
2天前
|
SQL 存储 数据库
sql数据库面试题
以下是一些SQL数据库的面试题: 1. 什么是SQL?你能简要描述一下它的特点吗? 2. SQL中的主键和外键是什么?它们有什么作用? 3. 你能解释一下什么是索引吗?索引在数据库中的作用是
|
15天前
|
存储 算法 安全
Java高级进阶面试总结(全面,实时更新)
Java高级进阶面试总结(全面,实时更新)
|
17天前
|
网络协议 程序员 网络架构
最全OSPF路由协议基础(OSPF基本配置),2024年最新Python高级面试
最全OSPF路由协议基础(OSPF基本配置),2024年最新Python高级面试
最全OSPF路由协议基础(OSPF基本配置),2024年最新Python高级面试
|
17天前
|
数据采集 数据挖掘 Python
2024年最全03,2024年最新Python高级面试
2024年最全03,2024年最新Python高级面试
|
20天前
|
数据采集 Python
matlab疲劳驾驶检测项目,Python高级面试framework
matlab疲劳驾驶检测项目,Python高级面试framework
|
20天前
|
JavaScript 前端开发
web前端JS高阶面试题(1),高级开发工程师面试
web前端JS高阶面试题(1),高级开发工程师面试