1

MS SQL读取JSON数据

前面有一篇《在SQL中直接把查询结果转换为JSON数据》https://www.cnblogs.com/insus/p/10905566.html,是把table转换为json。 现反过来,当SQL从前端接收过来的数据是JSON的话,需要把它转换为TABLE。在MS SQL Server 2016有...

Insus.NET 发布于 2019-05-23 16:28 评论(0) 阅读(8)
1

MS SQL JSON类型type

在MS SQL Server 2016,已经支持JSON处理。 执行下面代码,将获取ms sql server对象类型以及其说明: IF OBJECT_ID('tempdb.dbo.#json_type') IS NOT NULL DROP TABLE #json_type CREA...

Insus.NET 发布于 2019-05-23 11:05 评论(0) 阅读(16)
1

在SQL中直接把查询结果转换为JSON数据

下面这篇中,已经有准备一些数据: 《MS SQL server对象类型type》https://www.cnblogs.com/insus/p/10903916.html 为前端服务,直接在SQL把查询结果转换为JSON格式数据: 实现这样的功能,可以使用SQL的FOR JSON PATH: SEL...

Insus.NET 发布于 2019-05-22 14:06 评论(0) 阅读(43)
1

MS SQL server对象类型type

执行下面代码,将获取ms sql server对象类型以及其说明 IF OBJECT_ID('tempdb.dbo.#type') IS NOT NULL DROP TABLE #type CREATE TABLE #type ( [type] NVARCHAR(2), [desc]...

Insus.NET 发布于 2019-05-22 09:24 评论(0) 阅读(40)
1

MS SQL Server的COALESCE函数

MS SQL Server的COALESCE函数是从一系列表达式中返回第一个NOT NULL的值。 检查[B],[Q],[S],[T],[U]的值: 检查顺序[B]->[Q]->[S]->[T]->[U],只要一遇上NOT NULL时,即刻返回。 IF OBJECT_ID(...

Insus.NET 发布于 2019-05-21 16:18 评论(0) 阅读(30)
1

2行2列分别使用逗号串连起来

刚有网友问及,第一列都需要由每一行的数据使用逗号串连起来。 Insus.NET先让其参考: 《数据表列值转换为逗号分隔字符串》https://www.cnblogs.com/insus/p/10848578.html 动态实现,因此Insus.NET试写: CREATE TABLE #t ([qlr...

Insus.NET 发布于 2019-05-21 15:28 评论(0) 阅读(36)
1

动态获取数据表或临时表列名

先参考这篇《获取MS SQL TABLE列名列表》https://www.cnblogs.com/insus/p/4835554.html 现在,把它改写为存储过程,动态获取任一数据表列名或者是临时表的列名。 SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON...

Insus.NET 发布于 2019-05-21 14:08 评论(0) 阅读(32)
1

判断临时表是否存在

参考下面代码,有方法一和方法二,判断临时表是否存在。但是方法一非临时表也可以使用,而方法二,纯判断临时表是否存在。 方法一: DECLARE @TABLE_NAME SYSNAME = '[#table_name]', --传入临时表名 @TABLE_SCHEMA SYSNAME =...

Insus.NET 发布于 2019-05-21 13:44 评论(0) 阅读(32)
1

RICOH C4502彩色打印机取消双面打印功能

参考下面步骤:...

Insus.NET 发布于 2019-05-20 16:58 评论(0) 阅读(11)
1

UNPIVOT逆透视以及动态逆透视存储过程

前几天一直练习PIVOT透视,还实现了动态透视的存过程《动态透视表》https://www.cnblogs.com/insus/p/10888277.html 今天练习MS SQL Server逆透视的功能。 首先准备一些可以逆透视的数据: IF OBJECT_ID('tempdb.dbo....

Insus.NET 发布于 2019-05-20 15:55 评论(0) 阅读(35)
1

MS SQL的CASE...WHEN...THEN...END语法

根据多个可能的答案检查一个值或变量。 举例说明: SELECT [type],CASE [type] WHEN 'TT' THEN 'TYPE_TABLE' WHEN 'FN' THEN 'SQL_SCALAR_FUNCTION' WH...

Insus.NET 发布于 2019-05-20 14:11 评论(0) 阅读(38)
1

获取数据库中所有触发器

从sys.objects对象表中,可以获取当前数据库所有触发器: SELECT * FROM sys.objects WHERE [type] = 'tr'...

Insus.NET 发布于 2019-05-20 10:42 评论(0) 阅读(39)
1

动态表名,列名,输入参数,输出参数等

本例实现动态表名,列名,输入参数,输出参数等进行操作。 先准备一些数据: IF OBJECT_ID('tempdb.dbo.#Part') IS NOT NULL DROP TABLE #Part CREATE TABLE #Part ( [ID] INT, [Item] NVARC...

Insus.NET 发布于 2019-05-20 09:55 评论(0) 阅读(44)
1

使用CTE生成辅助表(数字或时间)等

数字辅助表: DECLARE @start_digital INT = 0, @end_digital INT = 9 ;WITH Digital_Rangs(Digital) AS ( SELECT @start_digital UNION ALL SELECT [Digital] = [Digi...

Insus.NET 发布于 2019-05-20 08:05 评论(0) 阅读(27)
1

删除重复Row记录数据

使用CTE,ROW_NUMBER,PARTITION BY来处理数据表重复记录。 先准备下面的数据: IF OBJECT_ID('tempdb.dbo.#Part') IS NOT NULL DROP TABLE #Part CREATE TABLE #Part ( [ID] INT...

Insus.NET 发布于 2019-05-19 18:22 评论(0) 阅读(37)
1

检索每个组的最后一条记录

如标题一样,检索每个组的最后一条记录。 举例说明,先准备一些数据: 要求是以[Category]来分组, 检查以[Qty]数据最大的记录。 CTE查询分组表: SELECT数据: 只要我拿到row number为1的记录即可,因为在CTE处理时,已经做好按[Category]来分组并排序...

Insus.NET 发布于 2019-05-19 17:00 评论(0) 阅读(18)
1

动态透视表

写一个符合自己要求使用透视存储过程。在开发时,直接使用即可。 SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- -- Author: Insus.NET -- Create date: 2019-05-19 -- Update date: 201...

Insus.NET 发布于 2019-05-19 10:16 评论(0) 阅读(41)
1

在SSMS查询分析器中显示行号

有网友问及,看到Insus.NET帮他解决问题分享的截屏时,发现代码中有显示行号。而他的没有。 Step1: Go to Tools > Options Step2: In the Options dialog box navigate to Text Editor > All Lang...

Insus.NET 发布于 2019-05-18 08:44 评论(0) 阅读(26)
1

同一张表中有父子键关联进行查询

刚有网友提问,只有一张表,其中有子键与父键关联,怎样根扰子键查询到父键记录的数据? Insus.NET尝试写了一个简单的例子,希望能看得懂。 CREATE TABLE [dbo].[tempTable] ( [id] INT , [parent_id] INT NULL, [itemName] NV...

Insus.NET 发布于 2019-05-17 22:10 评论(0) 阅读(37)
1

想知道数据表的用户或系统异动时间

从这个表sys.dm_db_index_usage_stats可以获取到所有表或某一张表的用户或系统异动时间: SELECT OBJECT_NAME(object_id) AS table_name, last_user_seek, last_user_scan, last_user_lookup,...

Insus.NET 发布于 2019-05-17 16:18 评论(0) 阅读(21)