mysql对数据库的增删改

目录

DML语句:

增加数据(insert语句)

增加数据(insert into select)

修改数据(update语句)

 【where 子句条件】

删除数据(delete语句)

删除数据(truncate语句)

-- delete truncate drop 区别

DQL语言

查询语句语法规则

where 子句:

like 关键字:

in关键字

null值查询

常用的聚合函数

例子:

group by 和having 分组

group by :

having : 

Order by

limit关键字

limit实现分页显示的方式

扩展了解


DML语句:

数据删除:delete 主要功能是删除数据库中已有的记录,可以依照条件去做修改

数据增加:insert 主要功能是给数据库表增加记录

数据修改:update 主要功能是修改数据库表中已有的记录,可以根据条件去修改

增加数据(insert语句)

insert into 表名 (字段名,字段名,...,字段名)  values/value (值,...,值)

其中:

()” 包含的内容可以省略;

• 字段或值之间用英文逗号隔开;

• 可同时插入多条数据,values 后用英文逗号隔开;

• values和value的方式均可。

增加数据(insert into select)

insert into select 语句从一个表复制数据,然后把数据插入到一个已存在的表中。目标表中任何已存在的行都不会受影响。

insert into newstu(xingming,xingbie,classid) select sname,ssex,classid from student;

create table select :被插入表不能存在 ,被插入表没有任何约束

create table stu1 select sid,sname,birthday from student;

修改数据(update语句)

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

 【where 子句条件】

 where 子句 中的条件是对表中每一条数据进行判断,

 判断成立该数据的父句执行,

判断不成立该数据的父句不执行

删除数据(delete语句)

 delete from 表名 【where 子句】

删除数据(truncate语句)

清空表 、截断表    : truncate 表名

功能:清空某一张表内的全部数据,重置自增计数器;

特点:由于没有条件约束,所以速度快,而且效率高

-- delete truncate drop 区别

-- delete 只删数据

-- truncate 不仅把数据删掉,还删除了索引

-- drop 不仅把数据删掉,还删除了索引,表结构也删了

DQL语言

DQL(Data Query Language 数据查询语言)。用途是查询数据库数据,如SELECT语句。是SQL语句中最核心、最重要的语句,也是使用频率最高的语句。其中,可以根据表的结构和关系分为单表查询多表联查 

所有的查询都会得到一张虚拟表

最简单查询:select 123;     select ‘adc’;      select 1+1;

查询语句语法规则

select [distinct] {*\表.*} from 表1  [left\right\inner join 表2 on 表之间关系] [where] [group by] [having] [order by] [limit {[位置偏移量]行数}]

distinct设定可以去掉重复记录

as表名或者字段名过长时,可以用AS关键字起别名,方便操作。

group by按组分类显示查询出的数据。

havingGROUP BY分组时依赖的分组条件。

order by将查询出来的结果集按照一定顺序排序完成。

limit:限制显示查询结果的条数。

where 子句:

select * from 表名 where 条件

条件:为筛选条件,如不指定则修改该表中的所有数据

like 关键字:

select * from 表名 where 字段 like 条件;

where 子句中,使用like关键字进行模糊查询

% 任意多的任意字符

 _ 一个任意字符

select * from student where sname like '%杨%'

select * from student where sname like '杨_'

in关键字

select * from 表名 where 字段 in (值1,值2...);

查询的字段的值,至少与IN 后的括号中的一个值相同;

null值查询

select * from 表名 where 字段 is null | not null;

NULL代表“无值”

须使用 IS NULL 或 IS NOT NULL 比较操作符去比较

常用的聚合函数

函数名

返回值

AVG(col)

返回指定列的平均值

COUNT(col)

返回指定列中非NULL值的个数

MIN(col)

返回指定列的最小值

MAX(col)

返回指定列的最大值

SUM(col)

返回指定列的所有值之和

例子:

select count(*) from student;

select sum(score) from sc;

select avg(score) from sc;

select max(score) from sc;

select min(score) from sc;

group by 和having 分组

group by :

1、对所有的数据进行分组统计;

2、分组的依据字段可以有多个,并

依次分组

having : 

与GROUP BY结合使用,进行分组 后的数据筛选

select sid, sum(score),avg(score) from sc group by sid

having 对分组聚合后的数据进行条件筛选

select sid, sum(score),avg(score) from sc  

where score < 60

group by sid

having avg(score) < 60

Order by

select * from 表名 order by 字段 desc(降序) | asc(升序);

ORDER BY 表示对SELECT语句查询得到的结果,按字段名进行排序;

limit关键字

select * from 表名 limit n,m

LIMIT关键字是MySQL特有关键字;

LIMIT限制SELECT返回结果的行数;

n 表示第一条记录的偏移量,m 表示显示记录的数量

limit实现分页显示的方式

扩展了解

在mysql中使用limit关键字,而且需要放在select语句的最后面,如果是oracle 需要基于rownum来统计行数

Select rownum,name,salary from employees where rownum<5 order by salary desc;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/48145.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring, Spring Boot 和Spring MVC的关系以及区别

一、Spring 简单来说, Spring 是一个开发应用框架&#xff0c;主打轻量级、一站式、模块化&#xff0c;其目的是用于简化企业级应用程序开发。 Spring 的主要功能&#xff1a;管理对象&#xff0c;以及对象之间的依赖关系&#xff0c;面向切面编程&#xff0c;数据库事务管理, …

NO.1 Hadoop概述

1.1 Hadoop是什么 1.2 Hadoop优势 1.3 Hadoop组成 1.3.1 HDFS架构概述 1.3.2 YARN架构概述 1.3.3 MapReduce架构概述 1.3.4 HDFS、YARN、MapReduce三者关系 1.4 大数据技术生态体系 1.5 推荐系统框架图

数据结构C++——优先队列

文章目录 一、定义二、ADT三、优先队列的描述3.1 线性表3.2 堆3.2.1 最大堆的ADT3.2.2 最大堆的插入3.2.3 最大堆的删除3.2.4 最大堆的初始化3.3 左高树 LT3.3.1 高度优先左高树HBLT3.3.2 重量优先左高树WBLT3.3.3 最大HBLT的插入3.3.4 最大HBLT的删除3.3.5 合并两棵最大HBLT3.…

【Linux】yum的认识与简单配置

今天来初步认识一下yum——Linux下软件包管理器。 既然说到Linux下软件包管理器&#xff0c;那我们不妨来先谈论一下什么是软件包的概念。 1. 什么是软件包&#xff1f; 软件的下载需要源代码编译链接之后生成可执行文件进行运行。无论是Windows系统下还是Linux系统下&#x…

QT总结——图标显示坑

最近写代码遇到一个神仙大坑&#xff0c;我都怀疑我软件是不是坏了&#xff0c;这里记录一下。 写qt工程的时候我们一般会设置图标&#xff0c;这个图标是窗体的图标同时也是任务栏的图标&#xff0c;但是我发现生成的exe没有图标&#xff0c;这个时候就想着给他加一个图标&…

AI学习记录 - 激活函数的作用

试验&#xff0c;通过在线性公式加入激活函数&#xff0c;可以拟合复杂的情况&#xff08;使用react实现&#xff0c;原创&#xff09; 结论:1、线性函数的叠加&#xff0c;无论叠加多少次&#xff0c;都是线性的 如下图 示例代码 线性代码&#xff0c;使用ykxb的方式&…

【BUG】已解决:ValueError: All arrays must be of the same length

ValueError: All arrays must be of the same length 目录 ValueError: All arrays must be of the same length 【常见模块错误】 【解决方案】 问题原因 解决方法 欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 欢迎来到我的主页&#xff0c;我是博主英杰&…

Python爬虫实战案例(爬取图片)

爬取图片的信息 爬取图片与爬取文本内容相似&#xff0c;只是需要加上图片的url&#xff0c;并且在查找图片位置的时候需要带上图片的属性。 这里选取了一个4K高清的壁纸网站&#xff08;彼岸壁纸https://pic.netbian.com&#xff09;进行爬取。 具体步骤如下&#xff1a; …

[Python][Python入门]详细讲解

目录 0.铺垫1.常量和表达式2.变量3.变量的类型1.整数2.浮点数3.字符串4.布尔 4.动态类型特性5.注释∞.积累 0.铺垫 Python中&#xff0c;一个语句写完了之后&#xff0c;可以加上分号&#xff0c;也可以不加 通常情况下都是不加的&#xff0c;如果加了&#xff0c;也不算错如果…

Ubuntu-文件管理器中鼠标右键添加文本文件

文件管理器中鼠标右键添加文本文件 一、概述二、步骤 一、概述 Ubuntu在文管右键发现没有创建文本文件的菜单&#xff0c; 期望如下所示&#xff0c;这样的操作非常简单 二、步骤 找到模板文件夹 在模板文件夹&#xff0c;创建自己想要的文件就好啦 这个也是支持放文件夹去…

【C++】学习笔记——哈希_1

文章目录 十八、哈希1. unordered系列关联式容器2. 底层结构哈希函数哈希冲突 未完待续 十八、哈希 1. unordered系列关联式容器 在C11中&#xff0c;STL又提供了4个unordered系列的关联式容器&#xff0c;这四个容器与红黑树结构的关联式容器使用方式基本类似&#xff0c;只…

Linux云计算 |【第二阶段】AUTOMATION-DAY1

主要内容&#xff1a; 版本控制&#xff08;集中式、分布式&#xff09;、Git基础&#xff08;服务端、客户端部署&#xff0c;基础命令操作、文档版本管理&#xff09;、Git进阶&#xff08;数据恢复、分支、冲突管理&#xff09; 一、版本控制概念 版本控制是一种记录文件变…

iterm2工具的使用|MAC电脑终端实现分屏|iterm2开启滚动操作

iterm2 工具概括 iTerm2 是一款非常强大的终端工具。 iTerm2 最初是为 macOS 开发的,但也有 Windows 、Linux 发行版&#xff08;Ubuntu、centos…&#xff09;可用。 应用场景 Mac操作系统中想实现终端分屏 iterm2 工具特点 多标签和分屏: 可以在同一个窗口中打开多个标签…

C基础(学习)2024.7.23

Linux基本命令&#xff0c;vi编译器的使用&#xff0c;简单的编程步骤&#xff0c;程序语言&#xff0c;gcc编译器编译过程&#xff0c;进制转换相关知识可以查看文档http://t.csdnimg.cn/CmqhC 数值表示&#xff0c;词法符号&#xff0c;变量&#xff0c;常量相关知识可以查看…

.mp4格式的视频为何不能通过video标签在chrome浏览器中播放?

chrome浏览器目前只支持编解码格式为H264格式的视频&#xff0c;如果某个.mp4后缀的视频不能在chrome浏览器中播放&#xff0c;多半是这个视频的编码格式不是H264的&#xff01; 1、可以通过ffmpeg工具查看当前视频的编码格式&#xff1a; ffprobe -v error -select_streams v…

JS_plus.key.addEventListener监听键盘按键

官方文档&#xff1a;https://www.html5plus.org/doc/zh_cn/key.html 监听事件 plus.key.addEventListener(keydown, e > {console.log("keydown: "e.keyCode) }) plus.key.addEventListener(keyup, e > {console.log("keyup: "e.keyCode) })移除事…

arcgis api for js4.x实现点击GraphicsLayer上绘制的Graphic获取Graphic中的attributes中的信息

需求&#xff1a;arcgis api for js4.x 在Map地图中添加GraphicsLayer图层&#xff0c;在GraphicsLayer图层添加绘制graphics点&#xff0c;点击绘制的点&#xff0c;获取graphics点中的attributes中的信息 var cityCenter new Point(116, 36, new SpatialReference({ wkid: …

leetcode日记(48)排列序列

这道题想到了规律就不算难&#xff0c;列了好几个示例想出的规律&#xff0c;试着排序几个就会了 class Solution { public:string getPermutation(int n, int k) {string result;int m1;int i1;for(i;i<n;i) m*i;i--;int pm/i;string s;for(int j0;j<n;j) s.append(to_…

Vue 3 和 SpringBoot 实现文件分片上传示例

前端实现&#xff08;Vue 3和vue-upload-component&#xff09; 安装 vue-upload-component&#xff1a; npm install vue-upload-component --save创建一个Vue组件用于上传文件&#xff08;FileUploader.vue&#xff09;&#xff1a; <template><div><file-…

基于VUE的软件项目开发管理系统/项目管理系统/软件开发过程管理系统的设计与实现

摘 要 在Internet高速发展的今天&#xff0c;我们生活的各个领域都涉及到计算机的应用&#xff0c;其中包括软件项目开发管理系统的网络应用&#xff0c;在外国软件项目开发管理系统已经是很普遍的方式&#xff0c;不过国内的软件项目开发管理可能还处于起步阶段。软件项目开发…