当前位置: 首页 > news >正文

【MySQL】数据库约束和聚合函数的使用

目录

上篇在这里喔~

1.数据库约束

1.NULL约束 

2.UNIQUE唯一约束

3.DEFAULT默认值约束

4.PRIMARY KEY主键约束

5.FOREIGN  KEY外键约束

 2.表的设计

 1.设计思路​编辑

 2.固定套路​编辑

2.1一对一关系 

2.2一对多关系

 ​编辑

 2.3多对多关系

 ​编辑​编辑​编辑 

3.插入查询结果

4.聚合查询

 1.统计成绩共有多少

 2.求小锦鲤的总成绩

3.求小锦鲤成绩的平均值

 4.返回Java最高分和c++最低分


上篇在这里喔~

 增删改查

1.数据库约束

1.NULL约束 

create table stu1(id bigint not null);

2.UNIQUE唯一约束

3.DEFAULT默认值约束

create table stu1(id bigint not null unique,name varchar(255) default'无名氏');

4.PRIMARY KEY主键约束

create table stu1(id bigint primary key auto_increment,name varchar(255) default'无名氏');insert into stu1(id) values(1);
insert into stu1() values();
insert into stu1(id) values(8);
insert into stu1(name) values('w');

 

5.FOREIGN  KEY外键约束

create table class(id bigint primary key auto_increment,name varchar(255) not null nuique);
create table stu2(id bigint primary key auto_increment,name varchar default '无名氏',class_id bigint,foreign key (class_id) references class(id));

 

delete from stu2 where class_id is not null;
select * from stu2;
delete from class where id in (1,2);
select * from class;

 

此时可成功删除

 

 2.表的设计

 1.设计思路

 2.固定套路

2.1一对一关系 

2.2一对多关系

 

 2.3多对多关系

create table stu4(id bigint primary key auto_increment,name varchar(255) not null);
create table course(id bigint primary key auto_increment,name varchar(255) not null unique);
create table score(id bigint primary key auto_increment,score decimal(3),student_id bigint,course_id bigint,foreign key (student_id) references stu4(id),foreign key (course_id) references course(id));

  

3.插入查询结果

insert into stu1 values('小金');
insert into stu2(id,name) select id,name from stu1;
select * from stu1;
select * from stu2;

 

4.聚合查询

 1.统计成绩共有多少

select count(score) from score;
select count(*) from score;

 ​​​​​​​

 2.求小锦鲤的总成绩

select sum(score) '小锦鲤总分' from score, stu4 wherestu4.id = score.student_id and stu4.name = '小锦鲤';

3.求小锦鲤成绩的平均值

select avg(score)  '平均分' from score, stu4 where 
stu4.id = score.student_id and stu4.name = '小锦鲤';

 4.返回Java最高分和c++最低分

select max(score) 'java最高分', min(score) 'c++最低分' from score, course
where score.course_id = course.id; 

相关文章:

【MySQL】数据库约束和聚合函数的使用

目录 上篇在这里喔~ 1.数据库约束 1.NULL约束 2.UNIQUE唯一约束 3.DEFAULT默认值约束 4.PRIMARY KEY主键约束 5.FOREIGN KEY外键约束 2.表的设计 1.设计思路​编辑 2.固定套路​编辑 2.1一对一关系 2.2一对多关系 ​编辑 2.3多对多关系 ​编辑​编辑​编辑 3.插入…...

SpringMvcFoundation

SpringMvcFoundation 一. SpringMVC简介1.1 优点二.Spring入门案例2.1 导入坐标2.2 编写SpringBoot启动类2.3 编写controller2.4 入门案例工作流程分析2.4.1 启动服务器初始化过程2.4.2 单次请求过程2.5 PostMan简介2.5.1 PostMan基本使用2.6 请求与相应2.6.1 请求映射路径2.6.…...

从零学习SDK(7)如何打包SDK

打包SDK的目的是为了方便将SDK提供给其他开发者或用户使用,以及保证SDK的兼容性和安全性。打包SDK可以有以下几个好处: 减少依赖:打包SDK可以将SDK所需的库、资源、文档等打包成一个文件或者一个目录,这样就不需要用户再去安装或…...

Python OpenCV 3.x 示例:1~5

原文:OpenCV 3.x with Python By Example 协议:CC BY-NC-SA 4.0 译者:飞龙 本文来自【ApacheCN 计算机视觉 译文集】,采用译后编辑(MTPE)流程来尽可能提升效率。 当别人说你没有底线的时候,你最…...

葵铭智能面经4.18

虽然是小厂,但面的还是挺有深度的 1.自我介绍 第一个项目 2.有没有用过流协议 3.视频保存有没有切片,有没有考虑过大视频上传的性能问题 4.项目是同步的还是异步的 第二个项目 5.搜索引擎是动态的还是静态的,有没有动态的去爬取boost库…...

MyBatis 03 -MyBatis动态SQL与分页插件

动态SQL与分页插件 动态SQL与分页插件 动态SQL与分页插件1 动态SQL1.1 < sql >1.2 < if >1.3 < where >1.4 < set >1.5 < choose >1.6 < trim >1.7 < foreach > 2 mybatis缓存2.1 一级缓存2.2 二级缓存 3 分页插件3.1 概念3.2 访问与…...

4.10、字节序列转换函数

4.10、字节序列转换函数 1.字节序转换函数2.字节序转换函数有哪些3.字节序转换函数的使用 1.字节序转换函数 当格式化的数据在两台使用不同字节序的主机之间直接传递时&#xff0c;接收端必然错误的解释之。解决问题的方法是&#xff1a;发送端总是把要发送的数据转换成大端字…...

研究LLMs之前,不如先读读这五篇论文!

目标&#xff1a;了解 LMM 背后的主要思想 ▪️ Neural Machine Translation by Jointly Learning to Align and Translate ▪️ Attention Is All You Need ▪️ BERT ▪️ Improving Language Understanding by Generative Pre-Training ▪️ BART Neural Machine Translati…...

认识BASH这个Shell

文章目录 认识BASH这个Shell硬件、内核与shell为什么要学命令行模式的Shell&#xff1f;Bash Shell的功能命令与文件补全(TAB)命令别名设置(alias)历史命令(history)任务管理、前台、后台控制(jobs&#xff0c;fg&#xff0c;bg)通配符程序化脚本 查询命令是否为Bash shell 的内…...

用SQL语句操作Oracle数据库——数据更新

数据更新 数据库中的数据更新操作有3种&#xff1a;1)向表中添加若干行数据&#xff08;增&#xff09;&#xff1b;2&#xff09;删除表中的若干行数据&#xff08;删&#xff09;&#xff1b;3&#xff09;修改表中的数据&#xff08;改&#xff09;。对于这3种操作&#xf…...

二维码+互联网云技术在中建二局施工项目管理中的应用实践

中建二局&#xff08;全称&#xff1a;中国建筑第二工程局有限公司&#xff09;是世界500强企业—中国建筑股份有限公司的全资子公司&#xff0c;是集房建、基建、核电、火电、风电等多种建设和投资相融合的、国内最具综合实力的大型国有企业集团公司。中建二局具有土木建筑、设…...

扩散模型原理记录

1 扩散模型原理记录 参考资料&#xff1a; [1]【54、Probabilistic Diffusion Model概率扩散模型理论与完整PyTorch代码详细解读】 https://www.bilibili.com/video/BV1b541197HX/?share_sourcecopy_web&vd_source7771b17ae75bc5131361e81a50a0c871 [2] https://t.bili…...

Metasploit高级技术【第九章】

预计更新第一章 Metasploit的使用和配置 1.1 安装和配置Metasploit 1.2 Metasploit的基础命令和选项 1.3 高级选项和配置 第二章 渗透测试的漏洞利用和攻击方法 1.1 渗透测试中常见的漏洞类型和利用方法 1.2 Metasploit的漏洞利用模块和选项 1.3 模块编写和自定义 第三章 Met…...

RK3568平台开发系列讲解(调试篇)IS_ERR函数的使用

🚀返回专栏总目录 文章目录 一、IS_ERR函数用法二、IS_ERR函数三、内核错误码沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇将介绍 IS_ERR 函数的使用。 一、IS_ERR函数用法 先看下用法: 二、IS_ERR函数 对于任何一个指针来说,必然存在三种情况: 一种是合…...

TouchGFX界面开发 | TouchGFX软件安装

TouchGFX软件安装 TouchGFX和STemWin类似&#xff0c;都是一个GUI框架&#xff0c;可以方便的在STM32 Cortex-M4 以及更高级别的STM32芯片上创建GUI应用程序。 本文中的TouchGFX软件安装&#xff0c;是基于已经安装有STM32CubeMX Keil MDK-ARM开发环境的情况下进行的&#x…...

使用 IDEA 远程 Debug 调试

背景 有时候我们需要进行远程的debug&#xff0c;本文研究如何进行远程debug&#xff0c;以及使用 IDEA 远程debug的过程中的细节。看完可以解决你的一些疑惑。 配置 远程debug的服务&#xff0c;以springboot微服务为例。首先&#xff0c;启动springboot需要加上特定的参数。…...

红黑树和平衡二叉树的优缺点及应用场景

红黑树和平衡二叉树都是为了解决二叉搜索树的缺陷而提出的自平衡二叉树结构。它们的优缺点和应用场景如下: 红黑树: 优点: 时间复杂度为O(logN),可以快速查找、插入和删除。 红黑树具有良好的平衡性,树的高度保持较小,因此查找效率较高。 缺点: 实现比较复杂,需要遵守红黑树的…...

软文推广:真实有效提升软文排名与收录的三大方法!

软文是一种具有良好传播效果的文体&#xff0c;可以通过在搜索引擎中排名靠前的方式&#xff0c;为品牌或企业带来更多曝光。但是&#xff0c;如何让软文在搜索引擎中得到更好的收录和排名呢&#xff1f;在本文中&#xff0c;我们将讨论如何提升软文的收录和排名&#xff0c;以…...

SElinux的介绍及配置

SELinux(Security-Enhanced Linux) 是美国国家安全局&#xff08;NSA&#xff09;对于强制访问控制的实现&#xff0c;是 Linux历史上最杰出的新安全子系统 SELinux安全增强型Linux系统&#xff0c;是Linux内核子系统&#xff0c;旨在最大限度的减少服务进程对文件、端口等资源…...

vscode-python环境配置

vscode-python环境配置 1、环境基础 下载vscode找到python插件并安装安装python环境并配置环境变量 2、选择python解释器 尝试执行了一下&#xff0c;直接运行py文件&#xff0c;会使用c的调试工具&#xff0c;需要告诉vscode哪些是python Ctrl Shift P打开命令面板 执行…...

观察 Taotoken 在多地域请求下的延迟与稳定性表现

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 观察 Taotoken 在多地域请求下的延迟与稳定性表现 对于依赖大模型 API 进行开发的团队而言&#xff0c;服务的延迟与稳定性是影响开…...

个人自动化技能库构建指南:从Python脚本到Cron定时任务

1. 项目概述&#xff1a;一个为“摸鱼”场景设计的自动化技能库最近在GitHub上看到一个挺有意思的项目&#xff0c;叫my-copaw-skill。光看这个名字&#xff0c;就透着一股子“打工人”的幽默感——“copaw”这个词&#xff0c;我琢磨着应该是“copilot”&#xff08;副驾驶/助…...

告别内置ADC的烦恼:用ADS1119搞定STM32/DSP的高精度电压采样(附完整代码)

告别内置ADC的烦恼&#xff1a;用ADS1119搞定STM32/DSP的高精度电压采样&#xff08;附完整代码&#xff09; 在嵌入式系统开发中&#xff0c;电压采样是基础却至关重要的环节。许多工程师在使用STM32或DSP内置ADC时&#xff0c;常会遇到精度不足、抗干扰能力差、无法测量差分信…...

手把手教你给STM32MP157开发板接上HDMI显示器(基于Sii9022A芯片与设备树配置)

STM32MP157开发板HDMI显示实战&#xff1a;从硬件连接到设备树配置全解析 引言 当你第一次拿到STM32MP157开发板时&#xff0c;最令人兴奋的莫过于看到图形界面在屏幕上亮起的那一刻。但现实往往很骨感——手头可能没有配套的LCD屏幕&#xff0c;而HDMI显示器却是大多数开发者桌…...

未来之窗昭和仙君(九十四)用户指引自助教学源码—东方仙盟

软件教学引导功能说明书未来之窗昭和仙君 - cyberwin_fairyalliance_webquery一、功能概述软件教学引导功能主要用于为用户提供软件操作的引导&#xff0c;通过一系列步骤逐步引导用户完成软件的重要操作。该功能会创建遮罩层、高亮框和提示框&#xff0c;引导用户点击特定元素…...

Deep Lake:AI数据湖与向量数据库一体化管理实践

1. 项目概述&#xff1a;当数据湖遇上深度学习如果你正在构建一个AI应用&#xff0c;无论是图像识别、自然语言处理还是多模态模型&#xff0c;数据管理绝对是你绕不开的“硬骨头”。数据分散在各个文件夹、云存储、数据库里&#xff0c;格式五花八门&#xff0c;加载速度慢&am…...

技能即代码:用自动化工具构建个人技能维护系统

1. 项目概述与核心价值最近在GitHub上看到一个挺有意思的项目&#xff0c;叫“skill-guardian”&#xff0c;作者是0xtresser。乍一看这个名字&#xff0c;可能有点摸不着头脑&#xff0c;但点进去研究了一下&#xff0c;发现这其实是一个关于“技能守护”或者说“技能管理”的…...

别再手动折腾了!用Docker Compose 5分钟搞定ChirpStack LoRaWAN服务器部署(附配置文件详解)

5分钟极速部署ChirpStack LoRaWAN服务器的Docker Compose实战指南 1. 为什么选择Docker Compose部署ChirpStack&#xff1f; 对于物联网开发者而言&#xff0c;时间就是最宝贵的资源。传统的手动部署方式需要逐个安装和配置PostgreSQL、Redis、MQTT broker以及ChirpStack各个组…...

体育科学论文降AI工具免费推荐:2026年体育科学研究毕业论文知网AIGC超标4.8元亲测达标完整指南

体育科学论文降AI工具免费推荐&#xff1a;2026年体育科学研究毕业论文知网AIGC超标4.8元亲测达标完整指南 帮同学选过降AI工具&#xff0c;综合价格、效果、保障来看&#xff0c;推荐嘎嘎降AI&#xff08;www.aigcleaner.com&#xff09;。 4.8元&#xff0c;达标率99.26%&a…...

Node.js性能预测工具nodestradamus:从监控到预警的实践指南

1. 项目概述与核心价值最近在折腾一些服务器监控和性能预测的活儿&#xff0c;偶然间在GitHub上发现了一个叫nodestradamus的项目&#xff0c;作者是ChristosGrigoras。这个名字挺有意思&#xff0c;结合了“Node.js”和“诺查丹玛斯”&#xff08;那位著名的预言家&#xff09…...