MySQL学习笔记2【函数/约束/多表查询】
MySQL学习笔记
函数
字符串函数
函数 | 功能 |
---|---|
CONCAT(s1, s2, …, sn) | 字符串拼接,将s1, s2, …, sn拼接成一个字符串 |
LOWER(str) | 将字符串全部转为小写 |
UPPER(str) | 将字符串全部转为大写 |
LPAD(str, n, pad) | 左填充,用字符串pad对str的左边进行填充,达到n个字符串长度 |
RPAD(str, n, pad) | 右填充,用字符串pad对str的右边进行填充,达到n个字符串长度 |
TRIM(str) | 去掉字符串头部和尾部的空格 |
SUBSTRING(str, start, len) | 截取字符串,从start开始截取len长度的字符串,索引从1开始 |
REPLACE(column, source, replace) | 替换字符串 |
数值函数
函数 | 功能 |
---|---|
CEIL(x) | 向上取整 |
FLOOR(x) | 向下取整 |
MOD(x, y) | 返回x/y的模 |
RAND() | 返回0~1内的随机数 |
ROUND(x, y) | 对x的四舍五入,保留y位小数 |
日期函数
函数 | 功能 |
---|---|
CURDATE() | 返回当前日期 |
CURTIME() | 返回当前时间 |
NOW() | 返回当前日期和时间 |
YEAR(date) | 获取指定date的年份 |
MONTH(date) | 获取指定date的月份 |
DAY(date) | 获取指定date的日期 |
DATE_ADD(date, INTERVAL expr type) | 返回一个日期/时间值加上一个时间间隔expr后的时间值 |
DATEDIFF(date1, date2) | 返回起始时间date2和结束时间date1之间的天数 |
一个值得说的案例,查询员工入职天数,降序排序:
SELECT
username, DATEDIFF(NOW(), entrydate) AS entrydays
FROM users
ORDER BY entrydays DESC;
流程控制函数
-
IF(value, t, f)
- 功能:评估
value
的真假。 - 用法:如果
value
为真,返回t
;否则返回f
。 - 示例:
SELECT IF(age >= 18, 'Adult', 'Minor') AS age_group FROM users;
- 功能:评估
-
IFNULL(value1, value2)
- 功能:检查
value1
是否为空。 - 用法:如果
value1
不为空,返回value1
;如果为空,返回value2
。 - 示例:
SELECT IFNULL(nickname, username) AS display_name FROM users;
- 功能:检查
-
CASE WHEN [ val1 ] THEN [ res1 ] … ELSE [ default ] END
- 功能:执行多个条件的检查。
- 用法:如果
val1
为真,返回res1
,依此类推;如果都不满足,则返回default
。 - 示例:
SELECT CASE WHEN score >= 90 THEN 'A'WHEN score >= 80 THEN 'B'ELSE 'C'END AS grade FROM scores;
-
CASE [ expr ] WHEN [ val1 ] THEN [ res1 ] … ELSE [ default ] END
- 功能:与第3个函数类似,但通过评估一个表达式来进行条件判断。
- 用法:如果
expr
等于val1
,返回res1
;如果不匹配,返回default
。 - 示例:
SELECT CASE user_typeWHEN 'admin' THEN 'Administrator'WHEN 'user' THEN 'Regular User'ELSE 'Unknown'END AS user_role FROM users;
约束
约束条件 | 关键字 | 说明 |
---|---|---|
主键 | PRIMARY KEY | 唯一标识表中的每一行,主键列的值不能重复且不能为空。 |
自动增长 | AUTO_INCREMENT | 使字段在插入新行时自动增加(常用于主键)。 |
不为空 | NOT NULL | 指定字段不能接受空值。 |
唯一 | UNIQUE | 确保字段的所有值都是唯一的,允许空值,但不能重复。 |
逻辑条件(条件一定要加上括号) | CHECK(约束条件) | 用于限制列中的值满足某些条件,必须使用括号以包围条件表达式。 |
默认值 | DEFAULT | 指定列的默认值,插入时如果不提供该列的值,则使用默认值。 |
- 值得一提的是,如果想要同时插入多个数据,只要有一条数据不满足约束,这条语句全部执行失败,就算其他数据符合约束条件,也不会插入进数据。
- 插入数据违反UNIQUE约束时,自增主键将会+1。
删除/更新行为
ON DELETE/UPDATE
行为 | 说明 |
---|---|
NO ACTION | 当在父表中删除或更新对应记录时,首先检查该记录是否有对应的外键。如果有,系统将不允许删除或更新(这与 RESTRICT 行为一致)。 |
RESTRICT | 与 NO ACTION 一样,删除或更新前会检查是否存在对应外键,如果存在,则不允许进行操作。 |
CASCADE | 当在父表中删除或更新对应记录时,如果该记录有对应的外键,系统会自动删除或更新子表中相关的记录。 |
SET NULL | 当在父表中删除或更新对应记录时,如果该记录有对应的外键,系统会将子表中该外键的值设置为 NULL(前提是该外键允许为 NULL)。 |
SET DEFAULT | 当父表的记录发生变更时,子表中的外键将被设为一个默认值(InnoDB 不支持此选项)。 |
多表查询
关系类型 | 定义 | 示例描述 | 数据库表示示例 |
---|---|---|---|
一对多 | 一个表中的一条记录可以关联到另一个表中的多条记录,而另一表中的每条记录只能关联到一条记录。 | 员工对应一个部门,部门有多个员工 | department 表与 emp 表,通过 dept_id 关联。 |
多对多 | 一个表中的多条记录可以关联到另一个表中的多条记录。通常需要一个关联表来实现这种关系。 | 一个学生可以选修多门课程,一门课程可以被多个学生选修。 | students 表与 courses 表,通过 student_courses 关联表。 |
一对一 | 一个表中的一条记录只能关联到另一个表中的一条记录,反之亦然。 | 每个用户有一条用户详情记录。 | users 表与 user_details 表,通过 user_id 关联。 |
- 一对一可以用来对单表进行拆分,结构更加清晰。
1. 合并查询(笛卡尔积)
-
定义:合并查询会显示两个表的所有组合结果,即笛卡尔积, 可以理解为19和09可以组合成多少个2位数
-
示例:
SELECT * FROM employee, dept;
2. 内连接查询
-
定义:内连接只返回两张表交集的部分,即满足连接条件的记录。
-
隐式内连接:
- 通过逗号分隔表名和用
WHERE
子句指定连接条件:
SELECT e.name, d.name FROM employee AS e, dept AS d WHERE e.dept = d.id;
- 通过逗号分隔表名和用
-
显式内连接:
- 使用
JOIN
关键字来显示连接关系,语法更清晰:
SELECT e.name, d.name FROM employee AS e INNER JOIN dept AS d ON e.dept = d.id;
- 使用
3. 外连接查询
-
左外连接(LEFT OUTER JOIN):
- 返回左表(employee)的所有数据,包含与右表(dept)交集部分的数据。
SELECT e.*, d.name FROM employee AS e LEFT OUTER JOIN dept AS d ON e.dept = d.id;
-
右外连接(RIGHT OUTER JOIN):
- 返回右表(dept)的所有数据,包含与左表(employee)交集部分的数据。
SELECT d.name, e.* FROM employee AS e RIGHT OUTER JOIN dept AS d ON e.dept = d.id;
-
tips:
- 左连接可以查询到没有部门的员工,右连接可以查询到没有员工的部门,此处可以做这道题练习一下
4. 自连接查询
-
定义:当前表与自身进行连接查询,需要使用表别名。
-
语法:
SELECT 字段列表 FROM 表A 别名A JOIN 表A 别名B ON 条件 ...;
-
示例:
- 查询员工及其所属领导的名字:
SELECT a.name, b.name FROM employee AS a, employee AS b WHERE a.manager = b.id;
- 查询没有领导的员工:
SELECT a.name, b.name FROM employee AS a LEFT JOIN employee AS b ON a.manager = b.id;
5. 联合查询
SELECT 字段列表 FROM 表A
UNION [ALL]
SELECT 字段列表 FROM 表B;
注意事项
-
去重行为:
UNION
:会去掉重复的记录,只返回唯一的结果集。UNION ALL
:包括所有结果,保留重复记录。
-
查询效率:
- 在某些情况下,使用
UNION
可能会比OR
效率高。这是因为对于UNION
,数据库可以对每个查询的结果集进行合并,而避免了对整个数据表的扫描。 - 使用
OR
条件可能会导致某些情况下索引(现在还不知道这个是什么, 姑且先记一下)失效,从而导致查询性能下降。
- 在某些情况下,使用
-
字段要求:
- 使用
UNION
或UNION ALL
时,所有的SELECT查询返回的字段数和数据类型必须一致。
- 使用
-
执行顺序:
- 如果查询的顺序很重要,可以使用
ORDER BY
对最终的结果集进行排序,但需要注意ORDER BY
只能在最后一个查询之后使用。
- 如果查询的顺序很重要,可以使用
使用示例
-- 查询两个表中用户的名字,去重
SELECT name FROM Customers
UNION
SELECT name FROM Employees;-- 查询两个表中用户的名字,包括重复
SELECT name FROM Customers
UNION ALL
SELECT name FROM Employees;
6.子查询
嵌套查询,也称为子查询,是一个查询嵌入在另一个查询内部。这种结构可以让我们在一个查询中利用另一个查询的结果。
子查询的分类
-
根据结果形式:
- 标量子查询:返回单个值(如一个数字、一个字符串等)。
- 列子查询:返回一列,可以是多行。
- 行子查询:返回一行,包含多个列。
- 表子查询:返回多行多列的结果。
-
根据位置:
- WHERE之后:用于过滤主查询的结果。
- FROM之后:作为数据源提供给主查询。
- SELECT之后:用于计算和生成字段值。
常用的操作符
- 标量子查询:常用操作符包括
=
,<
,>
,>=
,<=
。 - 列子查询:常用操作符包括
IN
,NOT IN
,ANY
,SOME
,ALL
。 - 行子查询:可以使用
=
,<
,>
,IN
,NOT IN
。 - 表子查询:多用于
IN
操作符。
示例分析
-
标量子查询示例:
SELECT * FROM employee WHERE entrydate > ( #子查询返回一个常量SELECT entrydate FROM employee WHERE name = 'xxx' );
-
列子查询示例:
SELECT * FROM employee WHERE dept IN ( #子查询返回很多列,如果dept存在于查询的结果之中,则算满足条件.SELECT id FROM dept WHERE name = '销售部' OR name = '市场部' );
-
行子查询示例:
SELECT * FROM employee WHERE (salary, manager) = ( #查询一列,返回N行,如果这几行全部相等,那么则算满足条件,SELECT salary, manager FROM employee WHERE name = 'xxx' );
-
表子查询示例:
SELECT e.*, d.* FROM ( #查询一张表,从这张表中再进行条件过滤或者左连接SELECT * FROM employee WHERE entrydate > '2006-01-01' ) AS e LEFT JOIN dept AS d ON e.dept = d.id;
TIPS:表字查询也可以放在WHERE '字段' IN后面, 和列子查询类似,只要满足其中一列全部相等,那么则算满足条件
值得一提的案例
SELECT d.id, #此处可以理解为先从FROM中查询到了id,再将id传入子查询中,通过count得出人数d.name, (SELECT COUNT(*) FROM emp e WHERE e.dept_id = d.id) AS '人数'
FROM dept d;
结语
该篇笔记主要涵盖了关于MySQL基本的函数/约束以及多表查询的相关内容,如果有什么问题,欢迎留言,希望对你也会有帮助。
相关文章:
MySQL学习笔记2【函数/约束/多表查询】
MySQL学习笔记 函数 字符串函数 函数功能CONCAT(s1, s2, …, sn)字符串拼接,将s1, s2, …, sn拼接成一个字符串LOWER(str)将字符串全部转为小写UPPER(str)将字符串全部转为大写LPAD(str, n, pad)左填充,用字符串pad对str的左边进行填充,达到…...
Pathview包:整合表达谱数据可视化KEGG通路
Pathview是一个用于整合表达谱数据并用于可视化KEGG通路的一个R包,其会先下载KEGG官网上的通路图,然后整合输入数据对通路图进行再次渲染,从而对KEGG通路图进行一定程度上的个性化处理,并且丰富其信息展示。(KEGG在线数…...
利用 Java 爬虫从 yiwugo 根据 ID 获取商品详情
在当今数字化时代,数据是商业决策的关键。对于从事国际贸易的商家来说,精准获取商品的详细信息至关重要。yiwugo 是一个知名的国际贸易平台,拥有海量的商品数据。通过 Java 爬虫技术,我们可以高效地从 yiwugo 根据商品 ID 获取详细…...
Word 转成pdf及打印的开源方案支持xp
Word转成pdf、打印的方案几乎没有免费开源的方案,现在提供一个通过LibreOffice实现的方案 操作依赖LibreOffice需要安装,点此下载老版本 5.4.7.2是最后一个支持xp的 版本如需xp要请安装此版本 LibreOffice官方介绍 LibreOffice 是一款开放源代码的自…...
2025年第三届“华数杯”国际赛B题解题思路与代码(Matlab版)
问题1:产业关联性分析 在 question1.m 文件中,我们分析了中国主要产业之间的相互关系。以下是代码的详细解读: % 问题1:分析中国主要产业之间的相互关系function question1()% 清空工作区和命令窗口clear;clc;% 设置中文显示set…...
pandas与sql对应关系【帮助sql使用者快速上手pandas】
本页旨在提供一些如何使用pandas执行各种SQL操作的示例,来帮助SQL使用者快速上手使用pandas。 目录 SQL语法一、选择SELECT1、选择2、添加计算列 二、连接JOIN ON1、内连接2、左外连接3、右外连接4、全外连接 三、过滤WHERE1、AND2、OR3、IS NULL4、IS NOT NULL5、B…...
<C++> XlsxWriter写EXCEL
XlsxWriter XlsxWriter是一个用于创建和写入Excel 2007及以上版本(.xlsx文件格式)的C库。以下是对XlsxWriter的详细介绍: 主要功能 文本、数字和公式写入:可以向多个工作表中写入文本、数字和公式。格式设置:支持丰…...
PySpark广播表连接解决数据倾斜的完整案例
使用PySpark解决数据倾斜问题的完整案例,通过广播表连接的方式来优化性能。 准备数据 假设我们有两张表,一张大表 big_table 和一张小表 small_table ,小表将作为广播表。 from pyspark.sql import SparkSession# 初始化SparkSession spar…...
seleniun 自动化程序,python编程 我监控 chrome debug数据后 ,怎么获取控制台的信息呢
python 好的,使用 Python 来监控 Chrome 的调试数据并获取控制台信息,可以使用 websocket-client 库来连接 Chrome 的 WebSocket 接口。以下是一个详细的示例: 1. 安装必要的库 首先,你需要安装 websocket-client 库。可以使用…...
Java Web开发进阶——Spring Boot与Thymeleaf模板引擎
Thymeleaf 是一个现代化的、功能强大的 Java 模板引擎,常用于生成 Web 应用程序的视图。它与 Spring Boot 的集成十分方便,并且提供了丰富的功能,能够帮助开发者实现动态渲染数据、处理表单、页面控制等操作。下面,我们将详细探讨…...
【“软件工程”基础概念学习】
基础和相关概念 英文:Software Engineering 软:物体内部的组织疏松,受外力作用后容易改变形状软件: 计算机系统的组成部分,是指挥计算机进行计算、判断、处理信息的程序系统。通常分为系统软件和应用软件。借指某项活…...
C语言基本知识复习浓缩版:控制语句--分支
选择结构 if语句 if控制语句 #include <stdio.h>int main() { int hour; float money; printf("请输入上网小时数:"); scanf("%d", &hour); if (hour <10) { money 30; }else if (hour >10 && hour <50) { mone…...
Oracle Dataguard(主库为双节点集群)配置详解(1):安装 Oracle11g RAC 双节点集群
Oracle Dataguard(主库为双节点集群)配置详解(1):安装 Oracle11g RAC 双节点集群 目录 Oracle Dataguard(主库为双节点集群)配置详解(1):安装 Oracle11g RAC …...
深度学习知识点:LSTM
文章目录 1.应用现状2.发展历史3.基本结构4.LSTM和RNN的差异 1.应用现状 长短期记忆神经网络(LSTM)是一种特殊的循环神经网络(RNN)。原始的RNN在训练中,随着训练时间的加长以及网络层数的增多,很容易出现梯度爆炸或者梯度消失的问…...
XML通过HTTP POST 请求发送到指定的 API 地址,进行数据回传
代码结构说明 这段代码的主要功能是: 从指定文件夹中读取所有 XML 文件。 将每个 XML 文件的内容通过 HTTP POST 请求发送到指定的 API 地址。 处理服务器的响应,并记录每个文件的处理结果。 using System; using System.IO; using System.Net; usin…...
初学者关于对机器学习的理解
一、机器学习: 1、概念:是指从有限的观测数据中学习(或“猜 测”)出具有一般性的规律,并利用这些规律对未知数据进行预测的方法.机器学 习是人工智能的一个重要分支,并逐渐成为推动人工智能发展的关键因素。 2、使用机器学习模型…...
【源码解析】Java NIO 包中的 ByteBuffer
文章目录 1. 前言2. ByteBuffer 概述3. 属性4. 构造器5. 方法5.1 allocate 分配 Buffer5.2 wrap 映射数组5.3 slice 获取子 ByteBuffer5.4 duplicate 复刻 ByteBuffer5.5 asReadOnlyBuffer 创建只读的 ByteBuffer5.6 get 方法获取字节5.7 put 方法往 ByteBuffer 里面加入字节5.…...
vue video重复视频 设置 srcObject 视频流不占用资源 减少资源浪费
// 直接设置srcObject减少获取视频流:通过 captureStream() 方法从下方视频元素获取视频流。 // 设置 srcObject:将获取到的视频流设置为上方视频的 srcObject 减少资源浪费 // 获取到需要复制到的dom元素 const firstVideoElement proxy.$refs.firs…...
LayaAir3.2来了:性能大幅提升、一键发布安装包、支持WebGPU、3D导航寻路、升级为真正的全平台引擎
前言 LayaAir3的每一个分支版本都是一次较大的提升,在3.1彻底完善了引擎生态结构之后,本次的3.2会重点完善全平台发布相关的种种能力,例如,除原有的安卓与iOS系统外,还支持Windows系统、Linux系统、鸿蒙Next系统&#…...
计算机网络(四)网络层
4.1、网络层概述 简介 网络层的主要任务是实现网络互连,进而实现数据包在各网络之间的传输 这些异构型网络N1~N7如果只是需要各自内部通信,他们只要实现各自的物理层和数据链路层即可 但是如果要将这些异构型网络互连起来,形成一个更大的互…...
时空笔记:CBEngine(微观交通模拟引擎)
CBEngine 是一个微观交通模拟引擎,可以支持城市规模的道路网络交通模拟。CBEngine 能够快速模拟拥有数千个交叉路口和数十万辆车辆的道路网络交通。 以下内容基本翻译自CBEngine — CBLab 1.0.0 documentation 1 模拟演示 1.0 模拟演示结构 config.cfg 定义了 roa…...
Apache Sedona和Spark将geojson瓦片化例子
Apache Sedona很方便读取geojson、ShapeFile、geopackage等文件,提供了很多spark sql函数和rdd算子。下面例子主要用于熟悉spark和sedona的使用。 引入的maven包 <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.or…...
5种IO模型
目录 一、认识IO二、5种IO模型三、非阻塞IO代码 一、认识IO 什么是IO? Input(输入)和Output(输出)。 冯诺依曼体系结构中,数据从输入设备拷贝到内存,经过处理后,再从内存拷贝到输出设备。现实情况中,数据并不是那么流…...
ue5 蒙太奇,即上半身动画和下半身组合在一起,并使用。学习b站库得科技
本文核心 正常跑步动画端枪动画跑起来也端枪 正常跑步动画 端枪动画的上半身 跑起来也端枪 三步走: 第一步制作动画蒙太奇和插槽 第二步动画蓝图选择使用上半身动画还是全身动画,将上半身端枪和下半身走路结合 第三步使用动画蒙太奇 1.开始把&a…...
面试题
1、shell 脚本写出检测 /tmp/size.log 文件如果存在显示它的内容,不存在则创建一个文件将创建时间写入。 2、写一个 shel1 脚本,实现批量添加 20个用户,用户名为user01-20,密码为user 后面跟5个随机字符。 3、编写个shel 脚本将/usr/local 目录下大于10M的文件转移到…...
工厂方法模式
工厂方法模式(Factory Method Pattern)是一种创建型设计模式,它提供了一个接口,用于创建对象,但允许子类决定实例化的类是哪一个。这样,工厂方法模式将对象的创建逻辑委托给子类,从而实现了创建…...
web前端学习总结(一)
web前端使用三项技术:html、css、javascript. 一、html:超文本标记语言,用于展示网页的框架。 <html> <head><title> </title></head><body><div> </div> <!--用于布局,占1行 --><span&g…...
【深度学习入门_基础篇】概率论
开坑本部分主要为基础知识复习,新开坑中,学习记录自用。 学习目标: 随机事件与概率、随机变量及其分布、多维随机变量及其分布、大数定律与中心极限定理。 强烈推荐此视频: 概率论_麻省理工公开课 废话不多说,直接…...
SpringMVC根据url校验权限,防止垂直越权
思路是加一个拦截器,对除登录接口的所有请求进行拦截。拦截到请求后,查询当前用户都拥有哪些url的权限(这个需要权限表有url字段),然后与当前请求的url对比,如果相同则说明有权限,否则没有。 首…...
istio-proxy oom问题排查步骤
1. 查看cluster数量 cluster数量太多会导致istio-proxy占用比较大的内存,此时需检查是否dr资源的host设置有配置为* 2. 查看链路数据采样率 若采样率设置过高,在压测时需要很大的内存来维护链路数据。可以调低采样率或增大istio-proxy内存。 检查iop中…...
openstack下如何生成centos9 centos10 和Ubuntu24 镜像
如何生成一个centos 10和centos 9 的镜像1. 下载 对应的版本 wget https://cloud.centos.org/centos/10-stream/x86_64/images/CentOS-Stream-GenericCloud-x86_64-10-latest.x86_64.qcow2 wget https://cloud.centos.org/centos/9-stream/x86_64/images/CentOS-Stream-Gener…...
Yolov8训练方式以及C#中读取yolov8+onnx模型进行目标检测.NET 6.0
目录 首先你要定义v8的模型特征文件 下方是完整的模型编写函数 然后你要在控件窗体中定义应用这些方法以及函数 一、定义你的标签 二、下方是定义模块和坐标的方法 三、画框 完整推理函数代码块 效果展示 完整源码 训练其实和yolov10差不多 因为v10就是在v8的基础上做了优…...
C#中序列化的选择:JSON、XML、二进制与Protobuf详解
C#中序列化的选择:JSON、XML、二进制与Protobuf详解 在C#开发中,序列化是将对象转换为可存储或传输的格式的过程,而反序列化则是将存储或传输的数据重新转换为对象的过程。选择合适的序列化方式对应用程序的性能、可维护性和兼容性至关重要。…...
深入理解 Java 设计模式之策略模式
一、引言 在 Java 编程的世界里,设计模式就如同建筑师手中的蓝图,能够帮助我们构建出更加健壮、灵活且易于维护的代码结构。而策略模式作为一种经典的行为型设计模式,在诸多实际开发场景中都发挥着至关重要的作用。它能够让算法的定义与使用…...
如何快速导出Python包和安装?
pip freeze > requirements.txt导出: 安转 : pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple...
记录一个在增量更新工具类
1. 应用场景 比方说我现在有一个商品,这个商品可以上传图片用来展示,之前已经上传过5张图片 ABCDE,现在其中BC这两张图片不想要了要换成FG,这个时候就可以使用这个工具类进行更新。 在最后一步,可以不管ADE直接只管新增…...
VUE3 常用的组件介绍
Vue 组件简介 Vue 组件是构建 Vue 应用程序的核心部分,组件帮助我们将 UI 分解为独立的、可复用的块,每个组件都有自己的状态和行为。Vue 组件通常由模板、脚本和样式组成。组件的脚本部分包含了各种配置选项,用于定义组件的逻辑和功能。 组…...
UML系列之Rational Rose笔记二:包图
rose绘制包图,有简单的有复杂的; 正常图简单的话,直接新建package使用就行,改变package的大小,改变名称当作不同的包就行;基本没有什么学习难度;在此,笔者直接介绍一下回执标准一点…...
第34天:安全开发-JavaEE应用反射机制攻击链类对象成员变量方法构造方法
时间轴: Java反射相关类图解: 反射: 1、什么是 Java 反射 参考: https://xz.aliyun.com/t/9117 Java 提供了一套反射 API ,该 API 由 Class 类与 java.lang.reflect 类库组成。 该类库包含了 Field 、 Me…...
cuda实现flash_attn_mma_share_kv源码分析
一 源码分析 1.1 函数入口 void flash_attn_mma_stages_split_q_shared_kv(torch::Tensor Q, torch::Tensor K, torch::Tensor V, torch::Tensor O, int stages) {CHECK_TORCH_TENSOR_DTYPE(Q, torch::kHalf) // Q [B,H,N,D]CHECK_TORCH_TENSOR_DTYPE(K, torch::kHalf) // K …...
Python操作Excel的库openpyxl使用入门
openpyxl 是一个用于读写 Excel 2010 xlsx/xlsm/xltx/xltm 文件的 Python 库。以下是一些 openpyxl 的基本使用方法: 安装 openpyxl 首先,确保已经安装了 openpyxl。如果没有安装,可以使用以下命令进行安装: pip install openp…...
《拉依达的嵌入式\驱动面试宝典》—计算机网络篇(二)
《拉依达的嵌入式\驱动面试宝典》—计算机网络篇(二) 你好,我是拉依达。 感谢所有阅读关注我的同学支持,目前博客累计阅读 27w,关注1.5w人。其中博客《最全Linux驱动开发全流程详细解析(持续更新)-CSDN博客》已经是 Linux驱动 相关内容搜索的推荐首位,感谢大家支持。 《…...
信息网络安全考试gjdw
序号 一级纲要 二级纲要 题目分类 题型 题干 选项 答案 题目依据 试题分数 试题编码 备注 说明 1 信息安规 \ 专业题库 单选题 根据信息安规规定,试验和推广信息新技术,应制定相应的( ),经本单位…...
S变换matlab实现
S变换函数 function [st,t,f] st(timeseries,minfreq,maxfreq,samplingrate,freqsamplingrate) % S变换 % Code by huasir Beijing 2025.1.10 % Reference is "Localization of the Complex Spectrum: The S Transform" % from IEEE Transactions on Signal Proc…...
【OLAP和PLTP】—— 浅谈两者的应用场景和区别
大家好,我是摇光~ OLAP(Online Analytical Processing)和OLTP(Online Transaction Processing)是两种不同的数据处理技术,分别用于不同的业务场景。以下是关于OLAP和OLTP的详细介绍: 一、OLAP&…...
计算机组成原理(1)王道学习笔记
一、 引言 计算机硬件唯一能识别的数据是二进制-----0/1。 用低/高电平表示0/1。 通过很多条电路,可以传递多个二进制数位。 每个二进制数位称为1bit(比特)。 计算机硬件的基本组成 早期的ENIAC计算机是通过手动接线来控制计算。冯诺依曼首次…...
LLaMA模型:自然语言处理的革新者
引言 在人工智能的领域中,自然语言处理(NLP)是一个充满挑战的分支,它的目标是让计算机能够理解和生成人类语言。Transformer模型,作为NLP的基石,已经极大地推动了这一领域的发展。然而,为了进一…...
各种特种无人机快速发展,无人机反制技术面临挑战
随着科技的飞速发展,各种特种无人机在军事、民用等领域得到了广泛应用,其性能不断提升,应用场景也日益丰富。然而,无人机反制技术的发展确实面临一定的挑战,难以完全跟上无人机技术的快速发展步伐。以下是对这一问题的…...
1555银行账户概要_pandas解答
目录 题目链接(无_力扣VIP_略过)一.读题(建议使用这种表结构_数据对比看)题目SQL Schema & Pandas Schema 建表语句_数据 二.答案_MySQL一图解MySQL一图解__可只需看此!!!!!!!!!!!!!!!!答案-----------------------------------------------------------------------------…...
【C++补充】第一弹---位图技术揭秘:内存优化与快速访问
✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】【C详解】 目录 1 位图 1.1 位图相关面试题 1.2 位图的设计及实现 1.3 C库中的位图 bitset 1.4 位图的模拟实现 1.5 位图的优缺点 1.6 位图相关考察题目 1 …...