表数据的CURD


文章目录

  • 表数据的CURD
    • 新增数据
      • 1. 单行插入
      • 2. 单行全列插入
      • 3. 多行某几列插入
      • 4. 多行全列插入
    • 查询表数据 Retrieve
      • 1. 全行全列查询
      • 2. 查找指定列
      • 3. 查询字段位表达式
      • 4. 给查询结果起别名
      • 5. 去重查询
      • 6. 按照结果集排序 order by
      • 7. 分页查询 limit
      • 8. 条件查询 where (不支持别名)
    • 修改表数据 update
      • 1. 修改一行一列
      • 2. 修改一行多列
      • 3. 修改多行数据
      • 4. 全列修改
    • 删除 delete
      • 1. 删除某一行
      • 2. 删除全表

新增数据

insert into tb_name(属性名称) values(属性值)

1. 单行插入

insert into stu(id,name) values(1,'显平');

第一个括号就是本次要插入数据的列名,若有的属性没有插入,就会使用NULL值占位;

第二个括号表示要插入的具体数据。

2. 单行全列插入

全列插入必须严格等于列的个数,否则报错

insert into stu values(2,'益州','123@qq.com');

3. 多行某几列插入

insert into stu(id,name) values (4,'鹏哥'),(5,'子昂');

4. 多行全列插入

insert into stu values(6,'威威','111qq.com'),(7,'强强','222qq.com');

查询表数据 Retrieve

select [distinct] [列名称]from tb_name[where][order by 某列 [asc|desc]][limit]

1. 全行全列查询

select * from tb_name;

2. 查找指定列

select 列名称 from tb_name;

3. 查询字段位表达式

查询所有学生姓名,语文成绩+10的结果

查询学生姓名以及总成绩

4. 给查询结果起别名

select 列名 as 新名词 from tb_name;

5. 去重查询

select distinct 列名称 from tb_name;

6. 按照结果集排序 order by

select 列名称 from tb_name order by 列名称 [asc|desc];

asc可以不写默认为升序

查询所有学生的姓名和他们的总成绩,按照总成绩升序排序/降序

select name,chinese + math + english as 总成绩 from exam_result order by 总成绩; / order by 总成绩 desc;

若结果中包含null值默认是最小值,比负值也小。

多列排序:

7. 分页查询 limit

select 属性名称 from tb_name limit n;// 查询结果按照前n行输出
select 属性名称 from tb_name limit n offset s; // 查询结果按照前n行输出,从第s行开始

8. 条件查询 where (不支持别名)

= ; != ; is null ; is not null ; > ; < ; >= ; <=

查询所有总成绩> 200的同学姓名和他们的总成绩

select name,chinese + math + english as 总成绩 from exam_result
where chinese + math + english > 200;

如果其中有一位同学成绩中有一门为null 则总成绩为null 且查询<200 时,不会显示。null+任何数据都时null。null本身就是一个没有任何实际数值的值

区间查询 between …and

包含查询 in

模糊查询 like

%元素[0…n]

_严格匹配一个字符

修改表数据 update

update 表名 set 列名 = (表达式 - 根据这个表达式确定修改的行);

1. 修改一行一列

成绩表中春鹏同学数学成绩+30

update exam set math = math + 30 where name = '春鹏';

2. 修改一行多列

成绩表中春鹏同学数学和英语成绩+5

update exam set math = math + 5,english + 5 where name = '春鹏';

3. 修改多行数据

where 过滤出来的结果是多行

成绩表中带的鹏同学数学成绩- 10

update exam set math = math - 10 where name like '%鹏%';

null 不能进行数学运算

4. 全列修改

不带 where 条件,该属性全被修改

所有同学的数学成绩都还原为0

update exam set math = 0;

删除 delete

delete from 表名 where 过滤条件;

1. 删除某一行

删除名字叫鹏仔的这一条学生记录

delete from exam_result where name = '鹏仔';

2. 删除全表

delete from exam;
truncate table exam;

delete 删除慢,可恢复, 可以加条件

truncate 删除快, 不可恢复, 不能加条件(直接在os上把数据文件大小整成0)

7天入门数据库 day23 - 数据表的CURD相关推荐

  1. iOS-查询数据库--指定数据表中的当前数据行的总数量

    很多时候,我们在查询一个表的时候,不想得到里面的记录内容,只是想简单的得到符合查询条件的记录条数. FMDB中有一个很简单的方法就可以实现,见下面的代码实例: #import "FMdata ...

  2. mysql表导出和导入命令行_MySQL命令行导出导入数据库和数据表-Go语言中文社区...

    MySQL命令行导出数据库: 1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录 如我输入的命令行:cd C:Program FilesMySQLMySQL Server ...

  3. php如何在mysql数据库里创建表_php创建mysql数据库以及数据表

    php创建mysql数据库以及数据表 用php链接到mysqli,成功后利用,mysqli_query()创建数据库以及数据表. $con = mysqli_connect("localho ...

  4. sql server2008中怎样用sql语句创建数据库和数据表

    这是简单用代码实现创建数据库和数据表的sql语句,如下: --调用系统数据库-- use master go /***防止你要创建的数据库同名,先把它删除掉****/ if Exists(select ...

  5. MySql DDL语言(数据库和数据表的管理)

    数据定义语言,负责数据库和数据表的管理 ⒈数据库的管理 1.创建数据库 1 create database if not exists DatabaseName; #if not exists可以省略 ...

  6. 6.MySQL数据库与数据表操作

    数据库的操作:数据库创建 :数据库删除 数据表的操作:数据表的创建:数据表的修改 (表结构) :数据表的删除 数据库的操作 1.数据库的创建 # 链接mysql数据库后,进入mysql后可以操作数据 ...

  7. mysql显示表已存在_MySQL数据库与数据表的相关操作

    数据库相关操作: 显示数据库:show databases; 如果是0.00秒并不代表没有花费时间,而是时间非常短,小于0.01秒. 创建数据库: Query OK表示创建成功,1行受到影响,处理时间 ...

  8. MySQL数据库、数据表和字段字符集查询、修改和配置

    一.设置编码 LINUX  修改vi/etc/my.cnf WINDOWS my.ini 在[client]下添加    default-character-set=utf8 在[mysqld]下添加 ...

  9. mysql数据库复制数据表时的风险

    最近在使用redis的缓存技术时,在项目中需要在插入mysql数据表记录的同时,缓存数据到redis.在创建数据表时,为了方便,直接使用复制另外一个数据库中的数据表,结果就悲剧了 package co ...

最新文章

  1. 雷观(十六):帮人写项目,不如教会别人写项目的方法
  2. ios开发text kit_iOS富文本(三)深入使用Text Kit
  3. 大型网站系统架构系列:负载均衡详解(一)
  4. 电脑安装android2.0,电脑上怎么安装使用安卓系统
  5. 微软面向初学者的机器学习课程:3.1-构建使用ML模型的Web应用程序
  6. [Leetcode][第112题][JAVA][路径总和][递归][队列]
  7. html页面返回json数据为空,在Html页面中,展示出Json格式数据,且保持缩进格式...
  8. 自学编程这几点非常重要
  9. 软件测试报告模板什么样的?
  10. 博信医药系统连接不到服务器,博信医药管理系统
  11. IDEA汉化包安装和卸载
  12. 密码学------BAN逻辑总结
  13. vue3+tsx封装组件
  14. mysql进阶教程pdf_Mysql基础到进阶精品视频教程附讲义文档 91课
  15. Boostnote是什么?-是为程序员开发的一种开放源代码记事本
  16. Habse中Rowkey的设计原则——通俗易懂篇
  17. C#报错:试图加载格式不正确的程序 0x8007000b
  18. SLAM如何发论文?SLAM领域大牛的总结
  19. axure文件如何加密_Axure share APP使用教程——如何在手机上演示axure文件
  20. ​性别歧视?为何互联网不适用于女性?

热门文章

  1. 用户体验的模型:Whitney Quesenbery的5E原则
  2. 深度学习中的mask操作
  3. 十七、打码平台的使用
  4. [CTO札记]武侠人物名称稀缺,上起点找吧
  5. python每日一个小程序_Python 练习册,每天一个小程序
  6. java学习--容器(1)
  7. 安装python3缺少db4-devel
  8. protocol method: #method<connection.close>(reply-code=530, reply-text=NOTALLOWED - vhost / not found
  9. CANoe CAPL 接收以太网报文--UDP
  10. 2018.11.15 《黄金时代》王小波