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

小黑日常积累:学习了CROSS APPLY字段,将sqlserver中字段通过分隔符拆分并统计

问题

字段中的元素是通过分隔符进行拼接的,我需要统计元素的个数,例如:
在这里插入图片描述

代码

样例表创建

-- 创建样例表
create table #Tmp_Table
(ID   int IDENTITY (1,1) not null,Strs nvarchar(50),primary key (ID)
);
insert into #Tmp_Table (Strs) VALUES ('a,b,c,d');
insert into #Tmp_Table (Strs) VALUES ('1,2,3,4');
insert into #Tmp_Table (Strs) VALUES ('8');

通过splitstring函数对每一个字段切分的返回结果

SELECT*
FROMSplitString('1,2,3,4', ',')

在这里插入图片描述
通过CROSS APPLY,‌其是SQL Server中的一种JOIN运算符,主要用于连接表值函数或子查询结果集,并将其应用于主表的每一行。

SELECTt.ID,s.value AS 'category'
FROM#Tmp_Table t
CROSS APPLYSTRING_SPLIT(t.[Strs], ',') s

在这里插入图片描述
最终代码

SELECTcategory, COUNT(category) AS NUM
FROM(SELECTt.ID,s.value AS 'category'FROM#Tmp_Table tCROSS APPLYSTRING_SPLIT(t.[Strs], ',') s) AS a
GROUP BYcategory

在这里插入图片描述
在这里插入图片描述

http://www.lryc.cn/news/525741.html

相关文章:

  • WebSocket知识点笔记(一)
  • 安宝特方案 | AR在供应链管理中的应用:提升效率与透明度
  • 基于Springboot + vue实现的美发门店管理系统
  • springboot中配置logback-spring.xml
  • 从63 秒到 0.482 秒:深入剖析 MySQL 分页查询优化
  • 细说机器学习算法之过拟合与欠拟合
  • C/C++ 虚函数
  • 【3GPP】【5G】注销流程(Deregistration procedures)
  • 【小游戏篇】三子棋游戏
  • 7-Zip Mark-of-the-Web绕过漏洞复现(CVE-2025-0411)
  • 2025年国产化推进.NET跨平台应用框架推荐
  • 关于ARM和汇编语言
  • 2024人工智能AI+制造业应用落地研究报告汇总PDF洞察(附原数据表)
  • QTableView和QTableWidget的关系与区别
  • Java导出通过Word模板导出docx文件并通过QQ邮箱发送
  • ESP8266 MQTT服务器+阿里云
  • css动画水球图
  • 【设计模式-行为型】状态模式
  • 2024.1.22 安全周报
  • idea修改模块名导致程序编译出错
  • root用户Linux银河麒麟服务器安装vnc服务
  • CentOS 7使用RPM安装MySQL
  • OpenCV imread函数读取图像__实例详解
  • 激光线扫相机无2D图像的标定方案
  • 【安当产品应用案例100集】034-安当KSP支持密评中存储数据的机密性和完整性
  • 08.七种排序算法实现(C语言)
  • Alibaba Spring Cloud 一 核心组件、特性
  • kafka学习笔记7 性能测试 —— 筑梦之路
  • HQChart使用教程30-K线图如何对接第3方数据45- DRAWRADAR数据结构
  • Java集合学习:HashMap的原理