「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「推荐专栏」:对网络安全感兴趣的小伙伴可以关注专栏《网络安全自学教程》
SQL Server是微软提供的一种关系型数据库,语法跟MySQL类似,这篇文章主要是熟悉SQL Server的语句格式,会脱裤、在告警流量中能认出来即可。
1、表操作
1.1、创建表
create table teacher(
id int primary key,
name varchar(10) not null,
age int
)
1.2、删除表
drop table teacher;
1.3、修改表
alter table teacher -- 添加字段
add name varchar(10) not null;
alter table teacher -- 删除字段
drop column name;
exec sp_rename 'teacher.name','newname','COLUMN'; -- 修改字段
alter table teacher -- 修改字段类型
alter column name varchar(10) not null;
2、数据操作
2.1、新增
insert into test.dbo.users (id,username,password)
values(1,'lisi',123),(2,'lisi',123);
insert into test.dbo.users (id,username,password) -- 将查询结果插入
select * from test.dbo.users;
2.2、删除
delete test.dbo.users where id=1
2.3、修改
update test.dbo.users set username='aaa' where id=1;
2.4、查询
select * from test.dbo.users -- 普通条件查询
where id=1;
2.4.1、模糊查询
select * from test.dbo.users
where username like '%li%';
2.4.2、范围查询
select * from test.dbo.users -- id在1~3之间的数据
where id between 1 and 3;
select * from test.dbo.users -- id在1~3以外的数据
where id not between 1 and 3;
2.4.3、子查询
select * from test.dbo.users -- id为1或2或3的数据
where id in(1,2,3);
select * from test.dbo.users -- id不是1或2或3的数据
where id not in(1,2,3);
2.4.4、排序
select * from test.dbo.users -- 从小到大排序
order by id asc;
select * from test.dbo.users -- 从大到小排序
order by id desc;
2.4.5、去重
select distinct * from test.dbo.users; -- 去重
2.4.6、前n行
select top 3 * from test.dbo.users; -- 前n行