SQL增删查改操作

news2024/10/1 2:38:34

目录

数据库概述

SQL基础操作

SQL通用语法

数据类型 

SQL语句的分类

DDL(数据库定义,表定义,字段定义) 

数据库操作

表操作 

DDL小结

DML(数据的增删改,数据操作语言)

 DQL(查询)

 DQL小节


数据库概述

数据库,顾名思义就是用来存储和管理数据的,我们平时所使用的各大软件平台的各种的信息其实都是从背后的数据库中取出来呈现在我们的眼前,供我们使用的,就比如:拼多多各种的商品信息:价格,口碑,回购率等等,这些都不是定死的,而是一个个的数据库中的数据,甚至你微信钱包中的余额,也仅仅只是数据库中存储的几个数字罢了;

那我们怎么使用和管理数据库呢?
一,我们可以使用图形化管理界面,操作起来更加的简单;
二,我们可以使用特定的语言对数据库进行操作管理;

数据分为很多种,不过综合考虑,我们大多数人使用的都是MYSQL数据库,而对于MYSQL有一门专门的语言叫做SQL语言来对MYSQL数据库进行操作;即便没有使用MYSQL语言也没有关系,因为SQL语言对于其他的各种数据库来说也是能用的,在其他数据库中使用相差不大;

SQL基础操作

SQL通用语法

1.SQL语句可以单行或多行书写,以分号结尾;
2.SQL语句可以使用空格和缩进来增强语句的可读性;
3.MYSQL数据库中的SQL语句对命令的大小写检查并不区分,但是建议尽量使用大写;
4.注释:
a.单行注释:--注释内容或者#注释内容(MYSQL特有的);
b.多行注释:/*内容*/;

数据类型 

整形数据我们通常使用int,浮点型数据通常使用varchar和char,日期通常使用的是date;

SQL语句的分类

DDL(数据库定义,表定义,字段定义) 

数据库操作


 

表操作 

1.查询

2.创建 

3.修改

对表字段进行操作的关键字为alter;固定格式为alter table 表明 +操作动词...

1>向表中添加字段

eg:现在有一张表(表名:emp)有以下字段,现在我向表中添加一个nickname字段 数据类型为varchar(10);

使用语句

​​​​​​​alter table emp add nickname varchar(10);

结果: 

2>更新字段名和数据类型

依旧以上面的表格为例,现在要将name改为ename,类型改为varchar(20);
使用语句:

alter table emp change name ename varchar(20);

 

3>删除字段 

 使用语句:

alter table emp drop nickname ;

结果: 

4>修改表名

使用语句:

alter table emp rename to tmp;

5>删除指定表

 

DDL小结

DML(数据的增删改,数据操作语言)

DML英文的全称是Data manipulation Language(数据库操作语言),用来对数据库中的数据进行增删改操作;

关键字

添加数据:insert ;
修改数据:update;
删除数据:delete; 

1>添加一行或多行数据

 a.我现在向刚才的表中添加一行小羽的数据;

使用语句:

insert into tmp (id,ename,gender,address) values("06","小羽",'女',"深圳");

此语句中字段语句可以省略 (id,ename,gender,address);

结果:

2>修改数据 

 现在我把小羽以及她的性别更改为 小杨 性别为男 ;
使用语句:

update tmp set ename ="小杨",gender ='男' where id ='06';

结果:

3>删除数据

where +条件是确定行的;假如我们没有使用where 那个删除就是整个字段的所有数据;

现在我将 上表中id为02的小明的那一行的数据删除;
使用语句:

delete from tmp where id ='02';

结果:

 DQL(查询)

DQL的英文全称是Data Quary Language(数据查询语言),数据查询语言,用来查询数据库中的表的记录;
在我们的网站中我们使用的最常用的功能就是查询操作;所以查询操作是十分重要的;
查询关键字为:select ;

这里是查询操作的所有列表;接下来我们依次来解决; 

 

 1>基本查询

由于有了前面很多的操作的基础,这里我就不做演示了;
注意:出现了新的关键字distinct ,其目的就是去重;

2>条件查询

3>聚合函数 


聚合函数的括号内的内容是字段;注意:*表示的是表中所有字段;

4>分组查询

 分组就是将字段中的数据按照种类分成多组,就比如 组中有男和女性别,分组后会将所有男的分到一张表中,将所有女的分到另外一张表中;

下面我将所刚才表中的男女进行分组;
错误语句(分组后打印组内的单个成员数据):

select id,ename,gender from tmp group by gender;

 此语句中将男女分组了,分组后如果没有指定条件,那么gender只有一个男和一个女,但是我在打印表的时候并没有使用条件性别是男还是女,这就导致了以下结果;

因为每一组只有一行,所以名字是只打印一个组内第一个;
分组后通常是不可以在进行打印出组内每个成员的数据的,因为我们分组的目的就是统计,这时候我们的对象应该是组而不再是个人了;分组尝尝会与聚合函数一块使用,起作用就是为了统计;

正确语句:

select gender,count(*) from tmp where gender ='男'||gender='女' group by gender;

 ​​​​​​​

如果我们想在分组后在加上一个条件的话就要是用having;下面我时候用SQL语句展示男女人数大于2的数据表;

注意:having是分组后的条件,因为有的时候我们需要先分组才能进一步处理数据,就像上面的一样,我必须先分组才能根据性别找到人数多少;如果不分组的是无法达到目的的;
使用语句:

select gender,count(*) from tmp where gender ='男'||gender='女' group by gender having count(*)>2;

 

5>排序查询

注意:排序查询可以按照一个字段排序,也可以按照多个字段排序;如果按照多个字段排序,那就是先按照第一个字段排序,如果有相同的数据,相同的数据按照第二个字段再排序;

6>分页查询

关键字:limit;
limit之后需要跟两个参数;但是如果是从第一页开始查找的话,第一个参数0是可以省略的;

 7>执行顺序

 DQL小节

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

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

相关文章

养老院管理系统(含源码+sql+视频导入教程+文档)

👉文末查看项目功能视频演示获取源码sql脚本视频导入教程视频 1 、功能描述 养老院管理系统拥有两种角色:管理员和护工 管理员:用户管理、老人信息管理、事故记录管理、入住费用管理、护工薪资管理、护工请假管理、床位管理、请假管理等 护…

消息中间件:RabbitMQ

消息中间件:RabbitMQ 前言安装Window安装Linux安装 管理页面什么是RabbitMQ?入门基本概念简单队列工作队列(Work Queues)发布/订阅(Publish/Subscribe)临时队列 路由(Routing)主题&a…

NanoDet安装教程

目录 1.安装NanoDet 1.1官网下载NanoDet 1.2 创建虚拟conda环境 1.3安装Pytorch库 2.侦测 3.训练 3.1yml文件修改 3.训练 3.1yml文件修改 轻量级模型 NanoDet-m 目标检测框架: YOLO 、 SSD 、 Fast R-CNN 等模型 ;但模型太大,不适合移植到移…

HTTP状态码全解

文章目录 常见状态码1XX Informational(请求正在处理)2XX Success(请求成功)3XX Redirection(重定向)4XX Client Error(客户端错误)5XX Server Error(服务器错误&#xf…

ros2安装完成后重要的一步

安装完成ros2之后,每次打开新的终端都需要 source /opt/ros/humble/setup.bash 为了解决这个为题,我们需要做如下操作,避免每次打开一个新的在终端都要设置。 在文件的最后一行添加 source /opt/ros/foxy/setup.bash

浸没式密封连接器

在当今科技快速发展的背景下,电子设备的整合度与性能需求持续提高,而连接技术作为电子设备间交互的关键,其重要性显而易见。在各式各样的连接技术当中,浸没式密封连接器凭借其独到设计和高超性能,在特定使用环境中显示…

学习经验分享【38】YOLOv11解读——最新YOLO版本

YOLO算法更新速度很快,已经出到V11版本,后续大家有想发论文或者搞项目可更新自己的baseline了。后续将改进YOLOv11算法,有需要的朋友可关注,我会持续进行更新。 YOLO11是Ultralytics YOLO系列实时目标检测器的最新迭代版本&#x…

《Linux从小白到高手》理论篇(七):Linux的时间管理运行级别启动过程原理详解

List item 本篇将介绍Linux的时间管理&运行级别相关知识,并将深入介绍Linux的启动过程及原理。 Linux的时间管理 Linux 时钟分为系统时钟(System Clock)和硬件(Real Time Clock,简称 RTC)时钟。系统时…

STM32CubeMX创建STM32H743工程

1、下载安装STM32CubeMX STM32CubeMX是STM32Cube工具家族中的一员,从MCU/MPU选型,引脚配置,系统时钟以及外设时钟设置,到外设参数配置,中间件参数配置,它给STM32开发者们提供了一种简单,方便&a…

华为OD机试 - 积木最远距离(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 2024E卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试真题(Python/JS/C/C)》。 刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,…

[Everything] 文件搜索工具的下载及详细安装使用过程(附有下载文件)

快速搜索文件名及其所在路径 下载链接在文末 下载压缩包后解压 !!安装路径不要有中文 解压后得到文件 双击exe文件得到 选择简体中文,点击OK 点击“我接受” 更改安装目录,最好不要放在C盘,点击下一步 点击下一步 点…

使用SNAP工具处理Sentinel-1数据应注意磁盘和内存问题

近期使用SNAP处理数据比较多,有一些心得给大家分享一下!在预处理Sentinel-1数据 的过程中出错基本上是有3种情况: 磁盘被写满 由于JAVA优化一般是通过空间换效率的方式。所以SNAP为了提高效率,本版本升级增加了数据本地缓存的比重…

zabbix7.0监控linux主机案例详解

前言 服务端配置 链接: rocky9.2部署zabbix服务端的详细过程 环境 主机ip应用zabbix-server192.168.10.11zabbix本体zabbix-client192.168.10.12zabbix-agent zabbix-server(服务端已配置) 具体实现过程 zabbix-client配置 安装zabbix-agent 添加扩展包 dnf -y instal…

nlp任务之预测中间词-huggingface

目录 1.加载编码器 1.1编码试算 2.加载数据集 3.数据集处理 3.1 map映射:只对数据集中的sentence数据进行编码 3.2用filter()过滤 单词太少的句子过滤掉 3.3截断句子 4.创建数据加载器Dataloader 5. 下游任务模型 6.测试预测代码 7.训练代码 8.保…

MKV转MP4丨FFmpeg的简单命令使用——视频格式转换

MKV是一种视频封装格式,很好用,也是OBS的默认推荐录制格式,因为不会突然断电关机而导致整个视频录制文件丢失。 但是MKV无法直接导入PR中剪辑,最直接的方法是将MKV转换为MP4格式,最方便且安全无损的转换方法便是用FFmp…

AD软件的分屏显示功能

1.鼠标右键点击上面的窗格,选择“垂直分布”,即可以将AD软件分屏,左边选择原理图,右边选择PCB即可以方便去设计PCB的布局。实现原理图和pcb文件的同时查看。 还可以建立起2个图之间的联动关系。 比如我们在电路图里面选择stm32 m…

Threejs中使用A*算法寻路导航

<!DOCTYPE html> <html><head><title>Threejs中使用A*算法寻路导航&#xff0c;Threejs室内室外地图导航</title><script type"text/javascript" src"libs/three.js"></script><script type"text/javas…

MySQL | union all 和union(去重和不去重)

题1&#xff1a; 现在运营想要分别查看学校为山东大学或者性别为男性的用户的device_id、gender、age和gpa数据&#xff0c;请取出相应结果&#xff0c;结果不去重。 示例&#xff1a;user_profile 根据示例&#xff0c;你的查询应返回以下结果&#xff1a; UNION&#xff08…

【C/C++】 秋招常考面试题最全总结(让你有一种相见恨晚的感觉)

目录 1.C程序编译链接过程 2.浅拷贝和move有区别吗 3.深拷贝和浅拷贝的区别 4.空类的大小 5.类的继承有几种方式&#xff0c;区别是什么&#xff1f; 六、extern 关键字的作用 七、static关键字的作用 八、指针和引用的区别 九、C内存分配方式 十、结构体对齐…