MySQL数据库:聚合函数、分组查询、约束、默认值设置、自增属性

news/2024/5/5 20:00:03/文章来源:https://blog.csdn.net/m0_63020222/article/details/128618949

一、聚合函数

1.聚合函数

        在MySQL数据库中预定义好的一些数据统计函数。

2.count(*)

功能:统计结果条数。

3.sum(字段名)

功能:对指定字段的数据求和。

4.avg(字段名)

功能:对指定字段的数据求平均值。

5.max(字段名) 和 min(字段名) 

功能:求取指定字段中,所有数据的最大值/最小值。

二、分组查询

概念:

        以表中某个字段为依据,对所有数据进行分组,然后对分组进行数据统计。

关键字:group by ……

注意事项:

(1)分组查询,所查询的字段只能是分组依据字段或聚合函数。

(2)分组查询中如果含有过滤条件,不能使用where,使用having。

三、表中字段约束

1. 非NULL约束

not null:约束某个字段的值不能为NULL。

2.唯一约束

unique key:约束某个字段的所有数据不能重复。

注意:直接接字段后时,key可省略不写。

3.主键约束

3.1 单个主键

primary key:约束指定字段非空且唯一。

注意:

(1)一个表中只能有一个主键。

(2)若表中没有设置主键,则非空且唯一修饰字段会升级为主键。

3.2 组合主键

primary key(字段1, 字段2,……):将多个字段整体,作为主键。

注意:

(1)组合整体才是主键,并不是每个组合字段都是主键。

(2)组合主键中的每个字段都不能为null。

(3)组合主键不能重复(注意:只有组合主键中的每个字段都相同,才视为重复)。

4.外键约束

外键约束:

        约束某张表中的某个字段的值,受到另一张表中字段数据的限制(即这个插入的数据必须在另一张表中存在)。

外键操作:

        foreign key(fields) references table2(fields);

例如:将学生表中的class_id字段与班级表中的id字段建立外键约束

四、默认值设置default

default 默认值:当表中指定字段没有进行数据添加时,将使用默认值进行自动填入。

注意:指定列新增,但是指定列不包含默认列,才会用默认值进行填入。全列新增给入null还是填入null,并不会自动填入默认值。

 五、自增属性auto_increment

auto_increment:

        当一个字段是整形字段,且该字段有唯一或主键约束,则可以使用自增属性。

自增属性:

        即若该字段给入的是null,则它会自动按表中最大的数字+1,向下增长。

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

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

相关文章

答疑——20年国赛题(JAVA解法)

题目链接:用户登录https://www.lanqiao.cn/problems/1025/learning/?page3&first_category_id1&sortstudents_count 题目描述 有 n 位同学同时找老师答疑。每位同学都预先估计了自己答疑的时间。 老师可以安排答疑的顺序,同学们要依次进入老…

sqoop数据导出、脚本使用

目录 准备表与数据 数据导出 脚本调用 准备表与数据 mysql表 CREATE TABLE user (id int(20),name varchar(20) )ENGINEINNODB DEFAULT CHARSETutf8; hive表 create table users( id bigint, name string ) row format delimited fields terminated by "\t";…

软考初级程序员--学习

1、十进制 转 二进制 十进制87 转换为 二进制为 1010111 2、二进制 转 十进制 二进制1010111 转换为 十进制 3、循环队列 计算长度通用公式: front:表示队首 rear:表示队尾 M:表示队列容量 队列长度 (rear - fr…

Verilog | 二进制与格雷码

一、格雷码简介 格雷码是一个叫弗兰克格雷的人在 1953 年发明的,最初用于通信。格雷码是一种循环二进制码或者叫作反射二进制码。格雷码的特点是从一个数变为相邻的一个数时,只有一个数据位发生跳变,由于这种特点,就可以避免二进…

进销存管理系统能为企业带来哪些实际效益?

随着互联网的不断发展,如今的商业世界已经越来越向数字化转型。拥有一套完整的数字化的进销存管理能够极大地提升公司货物进出库存情况的效率和准确性,避免过程中出现不必要的错误和漏洞,从而帮助企业更加稳健地自我发展。那么,一…

3.7.2数据库系统-数据库控制技术:数据库的安全性、数据库备份与恢复技术、数据备份、数据库故障与恢复

3.7.2数据库系统-数据库控制技术:数据库的安全性、数据库备份与恢复技术、数据备份、数据库故障与恢复数据库的安全性数据库备份与恢复技术数据备份数据库故障与恢复数据库的安全性 在做信息系统开发的过程当中,数据库是其中很大的占比,信息…

【MySQL入门指南】数据库基本操作

文章目录MySQL库操作一、SQL语句二、创建数据库1.语法2.案例3.极其不推荐的方式三、查看数据库1.语法四、修改数据库五、删除数据库六、字符集与校验规则1.是什么2.相关指令3.校验规则的影响七、备份数据库1.基本语法2.注意事项MySQL库操作 一、SQL语句 DDL(data definition l…

Visual Studio Code跳转到CSS定义

Visual Studio Code 快速跳转到 VUE文件 或 CSS文件的定义位置(跳转到class定义,跳转到css定义),插件Css Peek、Vue Peek 对提升开发效率上,事半功倍。 目录 1、跳转到CSS定义 1.1、CSS Peek 1.2、Vue Peek 2、其他…

全国青少年软件编程(Scratch)等级考试一级考试真题2023年3月——持续更新.....

一、单选题(共25题,共50分) 1. 下列说法不正确的是?( ) A.可以从声音库中随机导入声音 B.可以录制自己的声音上传 C.可以修改声音的大小 D.不能修改声音的速度 试题解析:针对声音可以进行导入,上传&…

【C++】哈希的应用 -- 布隆过滤器

文章目录一、布隆过滤器的引入二、哈希函数个数的选择三、布隆过滤器的实现四、布隆过滤器的应用五、布隆过滤器总结一、布隆过滤器的引入 我们在上一节中学习了 位图,知道了位图可以用来快速判断某个数据是否在一个集合中,但是位图有如下的缺点&#x…

计网第五章.运输层—TCP的三次握手与四次挥手

以下来自湖科大计算机网络公开课笔记及个人所搜集资料 目录一、TCP三次握手建立连接为什么TCP客户进程最后还要发送一个普通的TCP确认报文段呢?能不能两次握手?总结:二、TCP四次挥手释放连接四次挥手过程问题1:TCP客户进程在发送完…

论文阅读 - ANEMONE: Graph Anomaly Detection with Multi-Scale Contrastive Learning

目录 摘要 1 简介 2 问题陈述 3 PROPOSED ANEMONE FRAMEWORK 3.1 多尺度对比学习模型 3.1.1 增强的自我网络生成 3.1.2 补丁级对比网络 3.1.3 上下文级对比网络 3.1.4 联合训练 3.2 统计异常估计器 4 EXPERIMENTS 4.1 Experimental Setup 4.1.1 Datasets 4.1.2 …

HuggingGPT强势来袭,LLM+专家模型,迈向更通用的AI

出品人:Towhee 技术团队 超级组合:HuggingFace ChatGPT HuggingGPT强势来袭。人类仿佛距离真正的AGI又更近了一步。 HuggingGPT是浙江大学与微软亚洲研究院的联手研究,发布之后迅速引发关注,已经开源。 它的使用非常简单&#x…

极氪X上市,18.98万元起售,进军紧凑豪华车市场

HiEV消息(文/Amy)4月12日,纯电SUV极氪X上市,共发布三个版本,官方零售价为: •ME版 五座后驱 189,800元 •YOU版 五座四驱 209,800元 •YOU版 四座后驱 209,800元全系三款车型预计将于6月起开启交付。极氪X限…

分享一个RecyclerView嵌套webview 滑动不流畅的解决方法

因RecyclerView 和webview 或者X5的webview 都具有滑动的功能 所以在做嵌套的时候 会出现滑动不流畅 等问题 解决思路 就是判断滑动的时候 是否自身消耗 或者父布局的RecycleView消耗 开发中还遇到个问题 就是 更换成x5的时候 getScrolly() 返回的一直是0 改成getWebScrollY(…

借助Nacos配置中心实现一个简易的动态线程池

目录 一、实现思路 二、实现说明概览 三、代码实现 DynamicThreadPool RejectedProxyInvocationHandler DynamicThreadPoolRegister DynamicThreadPoolRefresher 测试动态线程池 平常我们系统中定义的一些线程池如果要想修改的话,需要修改配置重启服务才能生…

HTTPS-TSL握手

HTTP一般基于TCP协议,而HTTPS就是在这之间加了SSL/TLS协议,那么在TCP三次握手建立TCP连接后,就需要TLS握手建立SSL/TLS连接。 TLS握手-流程 (基于RSA算法) (1)首先,客户端向服务器发…

Linux_vim编辑器

Vi编辑器是所有Unix及Linux系统下标准的编辑器,类似于windows系统下的notepad(记事本)编辑器,由于在Unix及Linux系统的任何版本,Vi编辑器是完全相同的,因此可以在其他任何介绍vi的地方都能进一步了解它&…

多路I/O转接 poll(了解)

poll() 的机制与 select() 类似,与 select() 在本质上没有多大差别,管理多个描述符也是进行轮询,根据描述符的状态进行处理,但是 poll() 没有最大文件描述符数量的限制(但是数量过大后性能也是会下降)。 p…

LeetCode_单调栈_中等_1019.链表中的下一个更大节点

目录1.题目2.思路3.代码实现(Java)1.题目 给定一个长度为 n 的链表 head。对于列表中的每个节点,查找下一个更大节点的值。也就是说,对于每个节点,找到它旁边的第一个节点的值,这个节点的值严格大于它的值…