一.对数据库的操作

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文件

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语句的查询结果显示:
第一条:

第二条:

关键字 特点
select 后面的内容一般是要查询的字段(即列名),或聚合函数
having 分组后带有条件只能使用having
order by 它必须放到最后面

SQL语句-01-数据库操作/单表增删改查相关推荐

  1. mysql如何修改学生表_MySQL 详细单表增删改查crud语句

    MySQL 增删改查语句 1.创建练习表 这里练习表没有满足三范式 第一范式(又称 1NF):保证每列的原子性 数据表中的每一列(字段),必须是不可拆分的最小单元,也就是确保每一列的原子性.满足第一范 ...

  2. MySQL基础知识-MySQL概述安装,单表增删改查,函数,约束,多表查询,事物

    MySQL基础知识-MySQL概述安装,单表增删改查,函数,约束,多表查询,事物 前言 1.MySQL概述 1.1数据库相关概念 1.2MySQL数据库 1.2.1版本 1.2.2下载 1.2.3安装 ...

  3. mybatis --入门 单表增删改查-curd

    目录 1. mybatis 环境搭建 2. 实体类映射文件配置(写sql) 3. mybatis核心配置文件 (环境配置) 4. 测试 mybatis document https://mybatis ...

  4. django调用python脚本返回_Django框架(九)—— 单表增删改查,在Python脚本中调用Django环境...

    单表增删改查,在Python脚本中调用Django环境 一.数据库连接配置 如果连接的是pycharm默认的Sqlite,不用改动,使用默认配置即可 如果连接mysql,需要在配置文件中的settin ...

  5. Django框架(八)--单表增删改查,在Python脚本中调用Django环境

    一.数据库连接配置 如果连接的是pycharm默认的Sqlite,不用改动,使用默认配置即可 如果连接mysql,需要在配置文件中的setting中进行配置: 将DATABASES={} 更新为 DA ...

  6. SQL Server创建数据库和数据的增删改查

    SQL Server创建数据库和数据的增删改查 本文是针对数据的增删改查,数据的创建 首先我们使用命令创建sql server数据库 D盘新建一个文件夹DB use master go --创建数据库 ...

  7. C# 功能完整的单表增删改查程序

    id字段自增,标识增量和种子1: using System; using System.Collections.Generic; using System.ComponentModel; using ...

  8. 增删改查最终总结—2.1.1(单表-增删改查)

    一个 Mybatis 开发神器:Fast MyBatis 超好用 --------Fast Mybatis开发文档 每一个增删改查前都要先看这个--增删改查操作 都需要注意: 1.在控制层最后一行代码 ...

  9. springboot整合mybatis实现简单的单表增删改查(完整代码可下载)

    搭建项目 项目简单效果,前端效果丑的一批,主要是后端功能实现: springboot增删改查 csdn完整代码下载链接: springboot+mybatis Gitee下载地址: Gitee下载地址 ...

  10. Python编程 模拟SQL语句 实现对员工信息的增删改查

    一.问题描述 用 Python 模拟 sql 语句,实现对员工信息的增删改查. 封装函数,传入参数:文件路径和 sql 命令. 模拟 sql 语句实现对员工信息的现增删改查,并打印结果. 二.Pyth ...

最新文章

  1. golang微服务框架对比_微服务里程碑,Golang与Spring Cloud Alibaba完美结合
  2. 科普 | 12个关键词,告诉你到底什么是机器学习
  3. Go基础--goroutine和channel
  4. 恒驰机器人_机器人如何造恒驰?探秘最牛汽车生产基地
  5. Main函数中的argc和argv应用举例
  6. Demo:充分利用 Ajax 技术 来体现页面局部刷新 效果(获取天气预报情况)
  7. 可以买的一本书:3D计算机图形学(原书第3版)
  8. 【转】微信开发出现“该公众号暂时无法提供服务,请稍后再试”的坑
  9. 洛谷P1122最大子树和题解
  10. 科学计算机统计模式中中间数据输错怎么办,科学计算器在统计功能中如何清除以前不需要的数据?...
  11. 下载并安装WIN7 SP2的官方补丁包
  12. 第1期:手把手教你制作网易邮箱注册页面
  13. 360全景图PS更换天空背景
  14. 优动漫PAINT提高创作效率的小技巧——中间色与近似色
  15. macOS 10.10 u盘安装win7
  16. 报表分析软件有哪些呢?不急不急,给你推荐几款好用的
  17. python猜数字小游戏制作
  18. spring security 3配置ACL时报java.lang.NoSuchMethodError: net.sf.ehcache.Cache.init
  19. 数据结构与算法_02_局部最优的贪心算法
  20. matlab 脉冲密度调制,脉冲压缩技术研究指导.doc

热门文章

  1. python 装饰器原理_python3 property装饰器实现原理与用法示例
  2. 主进程退出后子进程还会存在吗?_进程和线程面试常见的19个问题
  3. python全栈之巅_Linux Crontab 定时任务
  4. java数组及循环专题练习(使用数组和循环结构实现一个简易的功能完善的订餐系统)
  5. 科研_今天,我们怎么做科研?
  6. python-numpy.array中,any()和all()方法介绍
  7. CVPR2018_主干网络系列(3)_SE-Net及其衍生的网络[SE-XX-Net]
  8. Ubuntu安装Tensorflow及anaconda环境下使用TensorFlow
  9. Web前端开发规范 之html命名规范
  10. Python3.X出现AttributeError: module 'urllib' has no attribute 'urlopen'错误