![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
SQL Server - 调优
吉普赛的歌
这个作者很懒,什么都没留下…
展开
-
@n is null or n=@n 是否能保证效率?
@n is null or n=@n 这种写法是部分开发人员推崇的, 目的是避免SQL的拼接,避免动态SQL。乍一看, 还是挺好的, 存储过程入口有一万个参数也无所谓, SQL语句里面全这么写上, 让SQL Server帮忙判断一下就是了。但效率到底高不高, 还是得评测一下。--注:按序号分开执行--1. --------------- 测试数据 END ----------------US...原创 2018-03-16 10:42:09 · 1066 阅读 · 3 评论 -
IN和OR会走索引吗?
--注:所有步骤均按序号分步单独执行,并观察对应的情况--0. USE tempdbGOIF OBJECT_ID('t') IS NOT NULL DROP TABLE tGOCREATE TABLE t(pkId INT IDENTITY(1,1) PRIMARY KEY, id VARCHAR(10) NOT NULL, room VARCHAR(10) NOT NULL, oth原创 2018-03-23 11:38:43 · 9495 阅读 · 0 评论 -
连接池的最大连接数对并发数的影响
using System;using System.Collections.Generic;using System.Data;using System.Data.SqlClient;using System.Diagnostics;using System.Linq;using System.Text;using System.Threading.Tasks;namespace原创 2018-03-26 16:12:02 · 3783 阅读 · 2 评论 -
前后%是否有建立索引的必要?
USE tempdbGOIF OBJECT_ID('t') IS NOT NULL DROP TABLE tGOCREATE TABLE t( id INT IDENTITY(1,1), [name] NVARCHAR(20) NOT NULL, CONSTRAINT pk_t PRIMARY KEY( id ))GO;WITH cte AS( SELECT 1 AS原创 2018-03-26 17:59:58 · 280 阅读 · 0 评论 -
多个单列索引执行计划如何选择?
USE tempdbGOIF OBJECT_ID('t') IS NOT NULL DROP TABLE tGOCREATE TABLE t(id INT IDENTITY(1,1) PRIMARY KEY, a INT,b INT,c INT)GO--插入 1000 * 1000 = 1百万条数据;WITH cte AS (SELECT TOP 1000 1 AS id FROM原创 2018-03-28 17:32:31 · 538 阅读 · 0 评论 -
开发人员喜欢用的 colName=@n or @n='' 会走索引吗?
USE tempdbGO--创建测试表,并插入 100 万条记录IF OBJECT_ID('t') IS NOT NULL DROP TABLE tGOCREATE TABLE t( id INT IDENTITY(1,1) PRIMARY KEY, n VARCHAR(20) NOT NULL )GO;WITH cte AS ( SELECT * FROM [mas...原创 2018-11-19 16:14:11 · 626 阅读 · 0 评论