create语句,创建库、表
create database [数据库名]; 创建数据库
create table [表名](
列名1 数据类型 约束,
列名2 数据类型 约束,
列名3 数据类型 约束,
。
。
。
列名n 数据类型 约束
); 创建表
+---------------------------------------------------------------------------------------------------+
drop语句,删除库、表
drop database [数据库名]; 删除数据库
drop table [表名]; 删除表
+---------------------------------------------------------------------------------------------------+
show语句,查看数据库与表信息
show databases; 查看当前主机中所有的数据库
show tables; 查看当前库中所有的表
show create table [表名]; 显示创建数据表的语句
show create database [数据库名]; 显示创建数据库的语句
showcolumns from [表名]; 显示表中所有的列
+---------------------------------------------------------------------------------------------------+
alter语句,修改表结构
alter table [表名] add [列名] [数据类型]; 添加列
alter table [表名] change [旧列名] [新列名] [数据类型]; 修改列
alter table [表名] drop column [列名]; 删除列
+---------------------------------------------------------------------------------------------------+
delete语句,删除表数据
delete from [表名]; 删除表中所有数据
delete from [表名] where [列名] = [值]; 删除指定行
+---------------------------------------------------------------------------------------------------+
update语句,修改表数据
update [表名] set [列名] = [值]; 将表中某列所有修改为指定值
update [表名] set [列名] = [值] where [列名] = [值]; 指定某行某列修改为指定值
+---------------------------------------------------------------------------------------------------+
检索数据
select查询主句
select [列名] from [表名]; 检索单列
select [列名],[列名],[列名]... from [表名]; 检索多列
select * from [表名]; 检索所有列
select distinct [列名] from [表名]; 去除重复值
+---------------------------------------------------------------------------------------------------+
限定查询结果
limit子句
select [列名] from [表名]
limit 5,5; 返回从第五行开始的第五条数据
+---------------------------------------------------------------------------------------------------+
结果排序
order by子句
select [列名] from [表名]
order by [列名1] desc [列名2]; 混合使用升降序,先按列1降序排,再按列2降序排
+---------------------------------------------------------------------------------------------------+
过滤数据
where子句
where字句操作符
= 等于
<> 不等于
!= 不等于
< 小于
<= 小于等于
> 大于
>= 大于等于
BETWEEN 在指定的两个值之间
select [列名] from [表名]
where 列名 between 5 and 10; 限定结果在5到10之间
is null空值检查
select [列名] from [表名]
where [列名] is null; 检索出某列为null的所有行
组合where子句:or 两个条件任意满足一个
select [列名] from [表名]
where [列名] = [值] or [列名] = [值]; 检索满足任意一个条件的行
组合where子句:and 两个条件必须同时满足
select [列名] from [表名]
where [列名] = [值] and [列名] = [值]; 检索满足所有条件的行
混合使用and和or
select [列名] from [表名]
where ([列名] = [值] or [列名] = [值]) and [列名] = [值]; 使用括号定义条件优先级,先判断or,再判断and
in操作符:指定取值范围
select [列名] from [表名]
where [列名] in (值1,值2,值3...); 检索列的值为括号中的行(in功能和or类似,但是in执行更快)
not操作符
select [列名] from [表名]
where [列名] not in (值1,值2,值3...); 检索所有列中值不为括号中的值的行
+---------------------------------------------------------------------------------------------------+
数据检索
like操作符,通配符过滤
% 表示任意字符,出现0次或任意次数
select [列名] from [表名]
where [列名] like “a%”; 检索以a开头的结果
_ 表示任意字符出现一次
select [列名] from [表名]
where [列名] like “a_”; 检索以a开头且后面只有一个字符结果
正则表达式搜索结果
基本字符匹配 regexp
select [列名] from [表名]
where [列名] regexp “abc”; 检索包含abc文本的结果(不区分大小写)
匹配字符类
预定义的字符集
字符 说明
[:alnum:] 任意字母和数字(同[a-zA-Z0-9])
[:alpha:] 任意字符(同[a-zA-Z])
[:blank:] 空格和制表(同[\\t])
[:cntrl:] ASCII控制字符(ASCII 0到31和127)
[:digit:] 任意数字(同[0-9])
[:graph:] 与[:print:]相同,但不包括空格
[:lower:] 任意小写字母(同[a-z])
[:print:] 任意可打印字符
[:punct:] 既不在[:alnum:]又不在[:cntrl:]中的任意字符
[:space:] 包括空格在内的任意空白字符(同[\\f\\n\\r\\t\\v])
[:upper:] 任意大写字母(同[A-Z])
[:xdigit:] 任意十六进制数字(同[a-fA-F0-9])
重复字符
字 符 说 明
* 0个或多个匹配
+ 1个或多个匹配(等于{1,})
? 0个或1个匹配(等于{0,1})
{n} 指定数目的匹配
{n,} 不少于指定数目的匹配
{n,m} 匹配数目的范围(m不超过255)
定位符
字 符 说 明
^ 文本的开始
$ 文本的结尾
[[:<:]] 词的开始
[[:>:]] 词的结尾
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ji-chu/99501.html