介绍
什么是sql
sql指的是结构化查询语言 sql使我们有能力访问数据库 sql是一种ANSI(美国国家标准化组织)的标准计算机语言
它能做什么
操作数据库内数据的增删改查
基础语法
insert ( 增 )
用于插入新数据
# 按照位置添加值
insert into 表名 values(值1, 值2..)
# 按照关键字添加值, 不填字段允许为空或有默认值
insert into 表名 (列1, 列3..) values (值1, 值3..)
delete ( 删 )
用于删除数据
# 删除某条数据
delete from 表名 where 列名 = 值
# 删除表内所有数据
delete * from 表名
delete from 表名
update ( 改 )
用于修改表中数据
# 更新一个字段
update 表名 set 列名 = 新值 where 列名 = 原值
# 更新多个字段
update 表名 set 列1 = 新值, 列2 = 新值 where 列名 = 原值
select ( 查 )
SELECT 语句用于从表中选取数据。
结果被存储在一个结果表中(称为结果集)。
select 列名 from 表名
select 列名1,列名2 from 表名
select * from 表名
distinct ( 去重 )
在表中,可能会包含重复值, distinct语句用于将结果集内结果去重.
select destinct 列名 from 表名
where ( 条件 )
用于有条件的选取数据
select 列名 from 表名 where 列名 运算符 值
# 值的数据类型要注意
select * from person where name='yky'
select * from person where age>18
运算符 | 描述 |
---|---|
= | 等于 |
<> | 不等于, 有些版本可写成!= |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
between | 在某个范围内 |
like | 模糊模式 |
and & or
用于连接两个where条件
select 列名 from 表名 where 条件1 and 条件2
select 列名 from 表名 where 条件1 or 条件2
# 用圆括号限制先后顺序
select 列名 from 表名 where (条件1 or 条件2) and 条件3
order by ( 排序 )
用于根据指定的列, 对结果集进行排序, 默认升序
如果希望以降序排列, 使用desc关键字
升序关键字为ASC
# 以列1排序
select * from 表名 order by 列名1
# 以列1反序排序
select * from 表名 order by 列名1 desc
# 如果列1排序后有重复, 列2按照升序排列, 均默认升序
select * from 表名 order by 列1, 列2
# 修改列1, 列2的升降序
select * from 表名 order by 列1 desc, 列2 asc