listagg

article/2025/10/4 10:54:56

1.创建数据表,准备测试数据

CREATE TABLE MK_STUDENT(ID NUMBER(18) NOT NULL,STU_NAME VARCHAR2(200),STU_SCORE VARCHAR2(50),PRIMARY KEY (ID)
);
ALTER TABLE MK_STUDENT ADD KEMU VARCHAR2(200);INSERT INTO MK_STUDENT (ID,STU_NAME,STU_SCORE,KEMU) VALUES (1,'小明',80,'英语');
INSERT INTO MK_STUDENT (ID,STU_NAME,STU_SCORE,KEMU) VALUES (2,'小明',60,'数学');
INSERT INTO MK_STUDENT (ID,STU_NAME,STU_SCORE,KEMU) VALUES (3,'小明',90,'语文');INSERT INTO MK_STUDENT (ID,STU_NAME,STU_SCORE,KEMU) VALUES (4,'小红',66,'英语');
INSERT INTO MK_STUDENT (ID,STU_NAME,STU_SCORE,KEMU) VALUES (5,'小红',90,'数学');
INSERT INTO MK_STUDENT (ID,STU_NAME,STU_SCORE,KEMU) VALUES (6,'小红',90,'语文');

在这里插入图片描述
2.查出每个学生的所有优秀科目(大于等于80),每个学生使用一条数据展示
使用子查询来做
0.1先查出所有学生的优秀科目

SELECT a.stu_name,a.stu_score
FROM 
MK_STUDENT a
WHERE 
a.stu_score >= 80

在这里插入图片描述

SELECT base.stu_name,listagg(base.KEMU,',')
WITHIN GROUP (ORDER BY base.stu_name)
FROM
(SELECT a.stu_name,a.stu_score,a.kemu
FROM 
MK_STUDENT a
WHERE 
a.stu_score >= 80) base
GROUP BY
base.stu_name

在这里插入图片描述

SELECT b1.stu_name,b1.优秀科目,b2.劣势科目 FROM 
(SELECT base.stu_name,listagg(base.KEMU,',')
WITHIN GROUP (ORDER BY base.stu_name) AS 优秀科目
FROM
(SELECT a.stu_name,a.stu_score,a.kemu
FROM 
MK_STUDENT a
WHERE 
a.stu_score >= 80) base
GROUP BY
base.stu_name) b1 ,(SELECT base.stu_name,listagg(base.KEMU,',')
WITHIN GROUP (ORDER BY base.stu_name)  AS 劣势科目
FROM
(SELECT a.stu_name,a.stu_score,a.kemu
FROM 
MK_STUDENT a
WHERE 
a.stu_score < 80) base
GROUP BY
base.stu_name) b2
WHERE 
b1.stu_name = b2.stu_name

在这里插入图片描述


http://chatgpt.dhexx.cn/article/VtQ6C6hm.shtml

相关文章

listagg( )详解

想象一个场景&#xff0c;现实生活中一个人有许多手机号已是常态&#xff0c;数据库中也会有类似的结构。 大家肯定想知道listagg()有什么样的效果&#xff1a; 案列分析 一个表中有许多数据&#xff0c;名字叫张三的有许多手机号。希望查询结果出来是分组且清晰。 select …

Oracle列转行函数 Listagg()详解

详解 listagg()函数可以实现多列记录聚合为一条记录&#xff0c;从而实现数据的压缩、致密化&#xff08;data densification&#xff09; 基本用法 像聚合函数一样&#xff0c;通过Group by语句&#xff0c;把每个Group的一个字段&#xff0c;拼接起来 LISTAGG(XXX,XXX) WI…

Oracle 中 LISTAGG 函数的介绍以及使用

LISTAGG 函数介绍 listagg 函数是 Oracle 11.2 推出的新特性。 其主要功能类似于 wmsys.wm_concat 函数&#xff0c; 即将数据分组后&#xff0c; 把指定列的数据再通过指定符号合并。LISTAGG 使用 listagg 函数有两个参数&#xff1a;1、 要合并的列名2、 自定义连接符号☆L…

矩阵乘以其矩阵转置求导-数学

20210703 矩阵论 https://zhuanlan.zhihu.com/p/288541909?utm_sourcewechat_session 矩阵运算法则 20210529 https://blog.csdn.net/Lisa_Ren_123/article/details/81983785 矩阵转置求导 https://jingyan.baidu.com/article/da1091fb69f0b7027849d612.html

matlab中怎么求矩阵的转置

第一步我们首先需要知道matlab中矩阵后面加单引号是共轭转置&#xff0c;加点和单引号是转置&#xff0c;如下图所示&#xff1a; matlab中怎么求矩阵的转置 第二步在matlab命令行窗口中输入“ A[1 2 4;5 6 7]”&#xff0c;如下图所示&#xff1a; matlab中怎么求矩阵的转…

矩阵的转置等于矩阵的逆

http://zhidao.baidu.com/question/334500638.html 百度知道三个回答 矩阵A的转置矩阵A^T等于A的逆矩阵A^-1 那么AA^TAA^-1E 设A(α1&#xff0c;α2&#xff0c;α3&#xff0c;...&#xff0c;αn)^T&#xff0c;其中αi为n维列向量&#xff0c; 那么A^T(α1&#xff0c;α2&…

矩阵转置运算简单总结

矩阵转置的运算规律&#xff1a; &#xff08;1&#xff09;; &#xff08;2&#xff09;; &#xff08;3&#xff09;; &#xff08;4&#xff09;; &#xff08;5&#xff09;

矩阵的转置

稀疏矩阵&#xff1a; 当一个矩阵中的很多元素都是零&#xff0c;而且非零元素的分布没有规律时&#xff0c;该矩阵称为稀疏矩阵。 稀疏矩阵的压缩存储方法&#xff1a; 从稀疏矩阵的概念&#xff0c;我们可以知道&#xff0c;稀疏矩阵的大多元素都是零。所以&#xff0c;我们只…

转置矩阵,逆矩阵和倒转置矩阵

单位矩阵&#xff1a; 转置矩阵(transpose matrix) 在线性代数中&#xff0c;矩阵A的转置是另一个矩阵AT&#xff08;也写做Atr, tA或A′&#xff09;由下列等价动作建立: 把A的横行写为AT的纵列把A的纵列写为AT的横行 形式上说&#xff0c;m n矩阵A的转置是n m矩阵 for 。…

矩阵的乘法和转置

矩阵的乘法 矩阵的转置 A的转置为 ​​​​​​​ 反对称矩阵主对角线上全为0&#xff1b;

矩阵与转置

1.转置矩阵 1.1转置矩阵简介 把矩阵A的行换成同序数的列得到的新矩阵&#xff0c;叫做A的转置矩阵(Transpose of a Matrix)&#xff0c;记作ATAT。 例如&#xff1a; 因此&#xff0c;转置矩阵的特点&#xff1a; &#xff08;1&#xff09;转置矩阵的行数是原矩阵的列数&…

矩阵转置

矩阵转置 1. n*n 对角线置换 #include <stdio.h> //编写函数&#xff1a;实现4*4矩阵的转置。 //要求&#xff1a;在main函数中定义二维数组、输入数据、输出原矩阵、调用函数、输出转置后的矩阵。 int ZhuanZhi(int arr[][4]){int temp;for(int i0;i<4;i){ for(int …

矩阵乘以它的转置

矩阵乘以它的转置 AA^T| |A| |A^T| |A||A| |A|^2即矩阵A乘以A的转置等于A的行列式的平方。 明显不等于啦&#xff0c;1*2的矩阵转置矩阵为2*1&#xff0c;那么1*2的矩阵乘以2*1的转置矩阵得到一个1*1的矩阵&#xff0c;而2*1的转置矩阵乘以1*2的矩阵得到一个2*2的矩阵 这个…

矩阵转置与矩阵相乘

1.转置矩阵 1.1转置矩阵简介 把矩阵A的行换成同序数的列得到的新矩阵&#xff0c;叫做A的转置矩阵(Transpose of a Matrix)&#xff0c;记作ATAT。 例如&#xff1a; 因此&#xff0c;转置矩阵的特点&#xff1a; &#xff08;1&#xff09;转置矩阵的行数是原矩阵的列数&…

gyp linux,使用gyp

GYP(Generate You Project)&#xff0c;生成IDE项目的工具&#xff0c;使用Python脚本写成&#xff0c;配置文件为JSON格式。 使用gyp需要两个环境&#xff0c;python和gyp。gyp可以直接在这里下载 git clone https://chromium.googlesource.com/external/gyp 一般下载到build/…

gyp ERR!报错解决

项目安装依赖包的时候&#xff0c;多次出现gyp ERR&#xff01;或者node-pre-gyp ERR!这种错&#xff0c;记录一下最近遇到的报错&#xff1a; 用过两次这种解决办法&#xff0c;都能把依赖下好&#xff0c;项目跑起来 npm instal --unsafe-perm 或者 yarn --unsafe-perm 运…

解决gyp err 错误

npm install 安装失败 有一堆报错&#xff0c;大概意思就是node-gyp没有安装成功&#xff0c;以及需要一些python的环境 解决步骤 1、安装python环境 2、以管理员身份执行 npm install --g --production windows-build-tools 3、之后在安装完成后会在C:WindowsSystem32里找到一…

gyp ERR! find Python 解决方案

命令行报错 npm install npm WARN deprecated fsevents2.1.3: "Please update to latest v2.3 or v2.2" npm WARN deprecated fsevents1.2.13: fsevents 1 will break on node v14 and could be using insecure binaries. Upgrade to fsevents 2.> heapdump0.3.…