上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 94 下一页
摘要: 在较新版本的SQL中,出现有2个函数,STRING_SPLIT和STRING_AGG,前者是把带有分隔的字符串转换为表,而后者却是把表某一表转换为以某种字符分隔的字符串。 如下面: 把它转存为表: DECLARE @dump_data AS TABLE([value] NVARCHAR(MAX)) 阅读全文
posted @ 2019-05-25 23:41 Insus.NET 阅读(2467) 评论(0) 推荐(3) 编辑
摘要: 在MS SQL Server 2017有了一个新函数TRIM,整合以前版本LTRIM和RTRIM。 这几个函数都是去除字符串头部后尾部的空格。 DECLARE @str NVARCHAR(MAX) = N' Insus.NET ' SELECT @str AS [str], [dbo].[svf_S 阅读全文
posted @ 2019-05-25 22:36 Insus.NET 阅读(3208) 评论(0) 推荐(1) 编辑
摘要: 如下面一串字符串: 为了计算得到字符串尾的空格长度,得先了解2个函数,LEN()和REVERSE(), LEN()函数返回文本字段中值的长度,这个函数,它包含字符串头部所有空格长度,但不包含字符串尾部所有空格。 另一个函数REVERSE()是将整个字符进行反转,'abcdef' --> 'fedcb 阅读全文
posted @ 2019-05-25 20:12 Insus.NET 阅读(1217) 评论(0) 推荐(1) 编辑
摘要: 插入数据库方法很多,下面Insus.NET列举几种方法,看看你常用的是哪一种: 创建一张表: CREATE TABLE [dbo].[Network_Info] ( [ID] INT NOT NULL, [NAME] NVARCHAR(20) NULL, [MAC] VARCHAR(17) NULL 阅读全文
posted @ 2019-05-25 17:56 Insus.NET 阅读(1083) 评论(0) 推荐(1) 编辑
摘要: 在本篇中,学习与练习SQL知识,程序中提供用户批量上传数据。在上传时也许会有网络中断,上传一部分,再重新上传。这样会有数据重复。 或者是需要对原有数据进行批量修改,删除等,要如何进行。 下面Insus.NET举个简单的例子。 先是在数据库创建一张表,是用来存储用户上传的数据。 CREATE TABL 阅读全文
posted @ 2019-05-25 12:14 Insus.NET 阅读(876) 评论(0) 推荐(2) 编辑
摘要: 先准备一些数据: 创建一张临时表来存储: DECLARE @json_table AS TABLE ( [type] NVARCHAR(MAX), [desc] NVARCHAR(MAX) ) 获取第一层数据: INSERT INTO @json_table ([type],[desc]) SELE 阅读全文
posted @ 2019-05-25 07:05 Insus.NET 阅读(1070) 评论(0) 推荐(2) 编辑
摘要: 前端有可能一次性上传多笔记录,并使用JSON序列化。 现在在MS SQL Server 2016版本上,可以直接处理JSO数据。 如下面的前端序列化的数据: DECLARE @json_string NVARCHAR(MAX) = N' { "catalog":[ {"ID":23394,"Item 阅读全文
posted @ 2019-05-24 22:00 Insus.NET 阅读(2485) 评论(0) 推荐(3) 编辑
摘要: 前面有一篇《在SQL中直接把查询结果转换为JSON数据》https://www.cnblogs.com/insus/p/10905566.html,是把table转换为json。 现反过来,当SQL从前端接收过来的数据是JSON的话,需要把它转换为TABLE。在MS SQL Server 2016有 阅读全文
posted @ 2019-05-23 16:28 Insus.NET 阅读(3270) 评论(0) 推荐(1) 编辑
摘要: 在MS SQL Server 2016,已经支持JSON处理。 执行下面代码,将获取ms sql server对象类型以及其说明: IF OBJECT_ID('tempdb.dbo.#json_type') IS NOT NULL DROP TABLE #json_type CREATE TABLE 阅读全文
posted @ 2019-05-23 11:05 Insus.NET 阅读(937) 评论(0) 推荐(1) 编辑
摘要: 下面这篇中,已经有准备一些数据: 《MS SQL server对象类型type》https://www.cnblogs.com/insus/p/10903916.html 为前端服务,直接在SQL把查询结果转换为JSON格式数据: 实现这样的功能,可以使用SQL的FOR JSON PATH: SEL 阅读全文
posted @ 2019-05-22 14:06 Insus.NET 阅读(17384) 评论(1) 推荐(1) 编辑
摘要: 执行下面代码,将获取ms sql server对象类型以及其说明 IF OBJECT_ID('tempdb.dbo.#type') IS NOT NULL DROP TABLE #type CREATE TABLE #type ( [type] NVARCHAR(2), [desc] NVARCHA 阅读全文
posted @ 2019-05-22 09:24 Insus.NET 阅读(2593) 评论(0) 推荐(2) 编辑
摘要: MS SQL Server的COALESCE函数是从一系列表达式中返回第一个NOT NULL的值。 检查[B],[Q],[S],[T],[U]的值: 检查顺序[B]->[Q]->[S]->[T]->[U],只要一遇上NOT NULL时,即刻返回。 IF OBJECT_ID('tempdb.dbo.# 阅读全文
posted @ 2019-05-21 16:18 Insus.NET 阅读(466) 评论(0) 推荐(2) 编辑
摘要: 刚有网友问及,第一列都需要由每一行的数据使用逗号串连起来。 Insus.NET先让其参考: 《数据表列值转换为逗号分隔字符串》https://www.cnblogs.com/insus/p/10848578.html 动态实现,因此Insus.NET试写: CREATE TABLE #t ([qlr 阅读全文
posted @ 2019-05-21 15:28 Insus.NET 阅读(344) 评论(0) 推荐(1) 编辑
摘要: 先参考这篇《获取MS SQL TABLE列名列表》https://www.cnblogs.com/insus/p/4835554.html 现在,把它改写为存储过程,动态获取任一数据表列名或者是临时表的列名。 SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON 阅读全文
posted @ 2019-05-21 14:08 Insus.NET 阅读(701) 评论(0) 推荐(1) 编辑
摘要: 参考下面代码,有方法一和方法二,判断临时表是否存在。但是方法一非临时表也可以使用,而方法二,纯判断临时表是否存在。 方法一: DECLARE @TABLE_NAME SYSNAME = '[#table_name]', --传入临时表名 @TABLE_SCHEMA SYSNAME = N'[dbo] 阅读全文
posted @ 2019-05-21 13:44 Insus.NET 阅读(805) 评论(0) 推荐(1) 编辑
摘要: 参考下面步骤: 阅读全文
posted @ 2019-05-20 16:58 Insus.NET 阅读(1506) 评论(0) 推荐(1) 编辑
摘要: 前几天一直练习PIVOT透视,还实现了动态透视的存过程《动态透视表》https://www.cnblogs.com/insus/p/10888277.html 今天练习MS SQL Server逆透视的功能。 首先准备一些可以逆透视的数据: IF OBJECT_ID('tempdb.dbo.#Par 阅读全文
posted @ 2019-05-20 15:55 Insus.NET 阅读(693) 评论(0) 推荐(1) 编辑
摘要: 根据多个可能的答案检查一个值或变量。 举例说明: SELECT [type],CASE [type] WHEN 'TT' THEN 'TYPE_TABLE' WHEN 'FN' THEN 'SQL_SCALAR_FUNCTION' WHEN 'C' THEN 'CHECK_CONSTRAINT' W 阅读全文
posted @ 2019-05-20 14:11 Insus.NET 阅读(633) 评论(0) 推荐(1) 编辑
摘要: 从sys.objects对象表中,可以获取当前数据库所有触发器: SELECT * FROM sys.objects WHERE [type] = 'tr' 阅读全文
posted @ 2019-05-20 10:42 Insus.NET 阅读(526) 评论(0) 推荐(1) 编辑
摘要: 本例实现动态表名,列名,输入参数,输出参数等进行操作。 先准备一些数据: IF OBJECT_ID('tempdb.dbo.#Part') IS NOT NULL DROP TABLE #Part CREATE TABLE #Part ( [ID] INT, [Item] NVARCHAR(40), 阅读全文
posted @ 2019-05-20 09:55 Insus.NET 阅读(615) 评论(0) 推荐(1) 编辑
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 94 下一页