一.对数据库的操作

1.1 创建及删除数据库

create database 库名
create database 库名 character set 编码

SQL语句

功能

create database 库名;

创建一个数据库

create database 库名 character set 编码;

创建一个数据库并设置数据库的编码

show create database 库名;

查看数据库编码

drop database 库名;

删除数据库

1.2 选择数据库

SQL语句

功能

use 库名;

锁定想要操作的数据库

select database();

查看当前选择的数据库

二.对数据库表的操作

2.1 创建表

SQL语句

功能

create table 表名(字段名 类型(长度) [约束], 字段名 类型(长度) [约束], ……);

创建表

drop table 表名;

删除表

2.2 查看表

SQL语句

功能

show tables;

列出数据库中所有表的表名

desc 表名;

可以查看表的结构

2.3 表的修改

SQL语句

功能

alter table 表名 add 字段名 类型(长度) [约束];

添加一列

alter table 表名 modify 要修改的字段名 类型(长度) [约束];

修改列的类型(长度,约束)

alter table 表名 change 旧字段名 新字段名 类型(长度) [约束];

修改列的列名(列名即字段名)

alter table 表名 drop 字段名;

删除一列

rename table 表名 to 新表名;

修改表名

alter table 表名 character set 编码;

修改表的字符集

show create table 表名;

查看当前表的编码

三.表中数据的增删改查

设置数据库的编码,解决乱码问题

set names gbk;

3.1 插入记录

insert into 表名(字段名1,字段名2,字段名3……) values(值1,值2,值3……)
insert into 表名 values(值1,值2,值3……)//也可以省略字段名

3.2 修改记录

update 表名 set 字段名=值, 字段名=值, 字段名=值……

3.3 删除记录

delete from 表名;

关键字delete和truncate都可用于删除表中数据,单是删除方式不同

关键字

特点

delete

删除是一条一条的删除记录,它配合事务,可以将删除的数据找回。uid不会重置

truncate

删除是将整个表摧毁,然后再创建一张一模一样的表。它删除的数据无法找回。uid会重置

四.查询操作

准备一些数据,shop数据库orderitem表
sql文件

access sql代码修正插件 sql数据库修改代码_sql

4.1 简单查询

SQL模板

功能

select * from 表名;

查询表中所有数据

select 字段名,字段名,… from 表名;

查询表中几列数据

select * from 表名 as 别名;

使用别名

select distinct(字段名) from 表名;

查询一列数据并去掉重复值显示

select 字段名+100 from 表名;

查询表中的列,并将此列的数据进行数学计算(+10)后显示

4.2 条件查询

SQL语句示例

功能

select * from 表名 where 字段名=’关键字’;

关键字匹配查询

select * from 表名 where 字段名 like ‘%关键字%’;

含有关键字的条件查询

select * from 表名 where id in<1,2,3>;

查询id值为1,2,3的数据

select * from 表名 where id>10;

查询id值大于10数据

select * from 表名 where id>10 or id=8;

查询id值大于10数据或等于8的数据

4.3 查询后排序显示

SQL模板

功能

select * from 表名 order by id asc;

查询表中数据,并按id升序排列显示

select * from 表名 order by id desc;

查询表中数据,并按id降序排列显示

4.4 使用聚合函数

SQL语句示例

功能

select sum(subtotal) from orderitem;

获得orderitem表中subtotal列的数据的和

select avg(subtotal) from orderitem;

获得orderitem表中subtotal列的数据的平均值

select count(*) from orderitem;

获得orderitem表中数据的总列数

4.4 分组查询

SQL模板

功能

SQL语句示例

功能

select 字段1,sum(字段2) from 表名 group by 字段1;

查询表中字段1的列的值并根据字段1的列的值分组,值相同的分为一组,并为每组求字段2的列的值的和

select count,sum(subtotal) from orderitem group by count;

查询orderitem表中count列的值并根据count列的值分组,值相同的分为一组,并为每组求subtotal列的值的和

select 字段1,sum(字段2) from 表名 group by 字段1 having sum(字段2)>15000;

查询表中字段1的列的值并根据字段1的列的值分组,值相同的分为一组,并为每组求字段2的列的值的和,将和大于15000的数据显示

select count,sum(subtotal) from orderitem group by count having sum(subtotal)>15000;

查询orderitem表中count列的值并根据count列的值分组,值相同的分为一组,并为每组求subtotal列的值的和,将和大于15000的数据显示

上述两条SQL语句的查询结果显示:

第一条:

access sql代码修正插件 sql数据库修改代码_sql_02


第二条:

access sql代码修正插件 sql数据库修改代码_sql_03

关键字

特点

select

后面的内容一般是要查询的字段(即列名),或聚合函数

having

分组后带有条件只能使用having

order by

它必须放到最后面