关系型数据库的SQL语句

关系型数据库(SQL)和非关系型数据库(NoSQL)的语句不一致,它们在操作语言上有显著差异。
关系型数据库有MySQL,Oracle,SQLite等,这里以MySQL数据库为例。

创建和删除(create、drop)

表在数据库中一共分为三种:永久表、临时表、虚拟表。
永久表:使用create table创建的
虚拟表:使用create view 创建的。虚拟表也叫视图,,可当做永久表的截图使用,可做修改但不建议修改。
临时表:用子查询查询出的表。

create database 数据库名称;	#创建数据库
use 数据库名称;				#使用数据库
create table 表名;			#创建永久数据表
create view 虚拟表表名 as select 列名 from 永久表表名;			#创建虚拟表,as是关联查询语句
select * from (select 列名 from 表名) a; #此方法查询出的表就是临时表
drop database 数据库名;		#删除数据库
drop table 虚拟表表名;			#删除永久数据表
drop view 表名;				#删除虚拟表

增(insert,alter add/modify/alter)

insert into 表名(指定表头) values(要添加的内容);
# values中药添加的内容需要和前边写的表头一一对应
# 如果不指定表头,单独写一个表名的话,在values中需要添加所有的表头所对应的值。
alter table 表名 add column 列名 数据类型;
# 在已有的表中添加新的一列
alter table 表名 add primary key (列名);
# 为已有表中的某一列设置为主键
alter table 表名 add constraint unique (列名);
#添加不允许重复约束
alter table 表名 modify 主键列名 主键类型 auto_increment
# 给主键增加自增约束
alter table 表名 modify 列名 数据类型 not null;
# 增加某一列的不允许为空(删除的话更改为null即可)
alter table 表名 alter 列名 set default '默认值';
# 为表中的某一列增加默认值,删除的话更改为null即可
alter table 表名 add constraint '约束名称(因为可以出现多个外键)' foreign key (列名) references 关联表名(列名);
# 增加外键

删(delete、alter drop)

delete from 表名 where 限定条件;
# 删除表中符合限定条件的行
alter table 表名 drop column 列名;
# 删除表中的列
alter table 表名 drop primary key (列名);
# 删除表中的主键约束(需要先删除自增约束才能删除主键约束)

改(update、alter modify/change/rename)

update 表名 set 列名='值' where 限定条件;
# 更改符合限定条件的表的指定列的值
alter table 表名 modify column 列名 新的数据类型
# 为已有表中的列更改数据类型
alter table 表名 change column 旧列名 新列名 数据类型;
# 将已有表中的列更名和更改数据类型
alter table 表名 rename to 新的表名
# 修改已有表的表名

查(select)

查询是数据库操作中最常用的操作,其中限定条件的书写最为重要,常用的关联词有where,in ,not,between and, or,and,like等

select 列名 from 表名 限定条件;
# 根据限定条件查询表中的列
常用链接条件含义
wherewhere后添加限制条件
distinct去除查询出的重复的内容
in表示在其中的意思
is not判断单元格状态
not = /<>/!=判断数据
between A and B相对于>和<比较来说是优化查询语句。A一定比B小,否则查询无结果
limit n限制输出n 行
like ‘%a%’模糊查询包含a的字符串,不区分字母大小写。(a%表示以a开头的,%a表示以a结尾的。_表示一个任意字符,%表示任意多个字符。)
order by 列名根据列名进行排序
group by 列名根据列名进行分组
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值