SQLSERVER

SQL开发知识:SQL Server 开窗函数 Over()代替游标的使用详解

前言: 今天在优化工作中遇到的sql慢的问题,发现以前用了挺多游标来处理数据,这样就导致在数据量多的情况下,需要一行一行去遍历从而计算需要的数据,这样处理的结果就是数据慢,容易卡死。 语法介绍: 1、与Row_Number() 函数结合使用,对结果进行排序...

SQL基础:SQL Server的触发器你了解多少

触发器是一种特殊类型的存储过程,它不同于之前的我们介绍的存储过程。触发器主要是通过事件进行触发被自动调用执行的。而存储过程可以通过存储过程的名称被调用。 什么是触发器 触发器对表进行插入、更新、删除的时候会自动执行的特殊存储过程。触发器一般用在check约...

SQL基础:SQL查询连续登陆7天以上的用户的方法实现

查询7天连续登陆用户这个问题很经典,解决方法也有很多,这里我讲一下笔者的方法,希望对大家有帮助。 具体思路: 1、因为每天用户登录次数可能不止一次,所以需要先将用户每天的登录日期去重。 2、再用row_number() over(partition by ...

SQL基础:SQL Server中使用表变量和临时表

一、表变量 表变量在SQL Server 2000中首次被引入。 表变量的具体定义包括列定义,列名,数据类型和约束。而在表变量中可以使用的约束包括主键约束,唯一约束,NULL约束和CHECK约束(外键约束不能在表变量中使用)。 定义表变量的语句是和正常使用...

SQL开发知识:SQL Server之JSON 函数详解

SQL Server 2005开始支持XML数据类型,提供原生的XML数据类型、XML索引及各种管理或输出XML格式的函数。随着JSON的流行,SQL Server2016开始支持JSON数据类型,不仅可以直接输出JSON格式的结果集,还能读取JSON格式...

SQL基础:sql字段解析器的实现示例

3. 单元测试 用例:有一段sql语句,我们需要从中截取出所有字段部分,以便进行后续的类型推断或者别名字段抽取定义,请给出此解析方法。 想来很简单吧,因为 sql 中的字段列表,使用方式有限,比如 a as b, a, a b… 1. 解题思路...

SQL Server2019安装的详细步骤实战记录(亲测可用)

共存问题 我之前一直使用的是SQL2012版本的数据库管理工具,为了与时俱进,我也尝试更新一下版本,当然SQLServer管理工具是可以多版本并存的,也就是你可以不用卸载你之前的版本,继续安装新版本使用。 安装 第一步:打开微软官方,下载数据库,通常我们下...

SQL基础:SQL Server 索引和视图详解

索引 1、 什么是索引 索引就是数据表中数据和相应的存储位置的列表,利用索引可以提高在表或视图中的查找数据的速度。 2、 索引分类 数据库中索引主要分为两类:聚集索引和非聚集索引。SQL Server 2005还提供了唯一索引、索引视图、全文索引、xml索...

SQL基础:SQL窗口函数之取值窗口函数的使用

SQL窗口函数 取值窗口函数可以用于返回窗口内指定位置的数据行。常见的取值窗口函数如下: LAG函数可以返回窗口内当前行之前的第N行数据。 LEAD函数可以返回窗口内当前行之后的第N行数据。 FIRST_VALUE函数可以返回窗口内第一行数据。 LAST_...