SqlServer存储过程用到一些总结 小白总结嘻嘻

2024-06-03 00:38

本文主要是介绍SqlServer存储过程用到一些总结 小白总结嘻嘻,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

声明:

 declare @i 

赋值

set i = 0

将多行的字段ID用逗号分开

select @ApplyIDs=stuff((select ','+ CONVERT(nvarchar(50),[ID])  from ApplyMain t where BillState<>1 and NextApproverNo = @BeforeUserNo for xml path('')), 1, 1, '');//'111,222,333'

执行动态SQl

set @Sql = 'update ApplyMain set NextApproverNo = '''+@AfterUserNo +''' where ID in ('+ @ApplyIDs+')'
EXEC sp_executesql @Sql

执行动态SQL求Count

 set @SqlDY =  'with cr as (select HigherDepID,ID from DepartmentInfo where ID =(select ID from DepartmentInfowhere  DepartmentName = '''+@DepartmentName+''' )union all select d.HigherDepID,d.ID from cr c inner join DepartmentInfo d on c.ID  = d.HigherDepID) select @DYCount=count(*) from EmployeeInfo where DepartmentID in (select ID from cr ) and delflag = 0'EXEC sp_executesql @SqlDY,N'@DYCount int output',@DYCount OUTPUT

将逗号分隔的字符串拆开 eg:‘制造,工厂,科,系,班,A’

   set @Sql = 'with cr as (select HigherDepID,ID from DepartmentInfo_mb where ID= '+convert(varchar,@DepartmentID)+'  union all select d.HigherDepID,d.ID from cr c inner join DepartmentInfo_mb d on c.HigherDepID = d.ID) select @DepartmentName=stuff((select '',''+ DepartmentName from DepartmentInfo_mb t where  ID in  (select ID from cr)   and delFlag=0  order by ID  for xml path('''')), 1, 1, '''')';EXEC sp_executesql @Sql,N'@DepartmentName nvarchar(500) output',@DepartmentName OUTPUTset @idx =1;set @num =1;set @Delimiter = ',';set @dep_henkomae =nullset @fac_henkomae =null;set @section_henkomae =null;set @subsection_henkomae =null;set @class_henkomae =null;set @shift_henkomae =null;while @idx != -1begin SET @idx = CHARINDEX(@Delimiter,@DepartmentName);IF @idx != 0begin SET @slice = LEFT(@DepartmentName,@idx - 1)endELSEbegin SET @slice = @DepartmentNameset @idx= -1;endSET @DepartmentName = RIGHT (@DepartmentName, LEN(@DepartmentName) - @idx)、if @num = 1 set @dep_henkomae = @slice;if @num = 2set @fac_henkomae = @slice;if @num = 3set @section_henkomae =@slice;if @num = 4set @subsection_henkomae = @slice;if @num = 5set @class_henkomae = @slice;if @num = 6set @shift_henkomae = @slice;set @num = @num+1end  

日期转为YYYY-MM-DD日期格式

convert(date, [CreateTime],111)

日期转为YYYY_MM_DD字符串格式、YYYY/MM/DD

convert(varchar(20), [CreateTime],23)、convert(varchar(20), [CreateTime],111)

数字转为字符串格式

convert(varchar(20), [Id])

这篇关于SqlServer存储过程用到一些总结 小白总结嘻嘻的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1025552

相关文章

将Mybatis升级为Mybatis-Plus的详细过程

《将Mybatis升级为Mybatis-Plus的详细过程》本文详细介绍了在若依管理系统(v3.8.8)中将MyBatis升级为MyBatis-Plus的过程,旨在提升开发效率,通过本文,开发者可实现... 目录说明流程增加依赖修改配置文件注释掉MyBATisConfig里面的Bean代码生成使用IDEA生

MySQL双主搭建+keepalived高可用的实现

《MySQL双主搭建+keepalived高可用的实现》本文主要介绍了MySQL双主搭建+keepalived高可用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、测试环境准备二、主从搭建1.创建复制用户2.创建复制关系3.开启复制,确认复制是否成功4.同

MyBatis 动态 SQL 优化之标签的实战与技巧(常见用法)

《MyBatis动态SQL优化之标签的实战与技巧(常见用法)》本文通过详细的示例和实际应用场景,介绍了如何有效利用这些标签来优化MyBatis配置,提升开发效率,确保SQL的高效执行和安全性,感... 目录动态SQL详解一、动态SQL的核心概念1.1 什么是动态SQL?1.2 动态SQL的优点1.3 动态S

Mysql表的简单操作(基本技能)

《Mysql表的简单操作(基本技能)》在数据库中,表的操作主要包括表的创建、查看、修改、删除等,了解如何操作这些表是数据库管理和开发的基本技能,本文给大家介绍Mysql表的简单操作,感兴趣的朋友一起看... 目录3.1 创建表 3.2 查看表结构3.3 修改表3.4 实践案例:修改表在数据库中,表的操作主要

C# WinForms存储过程操作数据库的实例讲解

《C#WinForms存储过程操作数据库的实例讲解》:本文主要介绍C#WinForms存储过程操作数据库的实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、存储过程基础二、C# 调用流程1. 数据库连接配置2. 执行存储过程(增删改)3. 查询数据三、事务处

JSON Web Token在登陆中的使用过程

《JSONWebToken在登陆中的使用过程》:本文主要介绍JSONWebToken在登陆中的使用过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录JWT 介绍微服务架构中的 JWT 使用结合微服务网关的 JWT 验证1. 用户登录,生成 JWT2. 自定义过滤

java中使用POI生成Excel并导出过程

《java中使用POI生成Excel并导出过程》:本文主要介绍java中使用POI生成Excel并导出过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录需求说明及实现方式需求完成通用代码版本1版本2结果展示type参数为atype参数为b总结注:本文章中代码均为

mysql出现ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost‘ (10061)的解决方法

《mysql出现ERROR2003(HY000):Can‘tconnecttoMySQLserveron‘localhost‘(10061)的解决方法》本文主要介绍了mysql出现... 目录前言:第一步:第二步:第三步:总结:前言:当你想通过命令窗口想打开mysql时候发现提http://www.cpp

MySQL大表数据的分区与分库分表的实现

《MySQL大表数据的分区与分库分表的实现》数据库的分区和分库分表是两种常用的技术方案,本文主要介绍了MySQL大表数据的分区与分库分表的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有... 目录1. mysql大表数据的分区1.1 什么是分区?1.2 分区的类型1.3 分区的优点1.4 分

MySQL错误代码2058和2059的解决办法

《MySQL错误代码2058和2059的解决办法》:本文主要介绍MySQL错误代码2058和2059的解决办法,2058和2059的错误码核心都是你用的客户端工具和mysql版本的密码插件不匹配,... 目录1. 前置理解2.报错现象3.解决办法(敲重点!!!)1. php前置理解2058和2059的错误