· 6 years ago · Jun 21, 2019, 01:54 PM
1USE tempdb;
2
3DROP TABLE IF EXISTS dbo.t;
4GO
5CREATE TABLE dbo.t
6(
7 t_id int NOT NULL
8 CONSTRAINT t_pk
9 PRIMARY KEY
10 CLUSTERED
11 IDENTITY(1,1)
12 , k sysname NOT NULL
13 INDEX t_001
14 , s sysname NOT NULL
15 INDEX t_002
16 , somedata varchar(1000) NOT NULL
17 CONSTRAINT t_somedata_df
18 DEFAULT REPLICATE('A', 1000)
19 , INDEX t_003 (k, s)
20);
21
22INSERT INTO dbo.t (s, k)
23SELECT sc1.name, sc2.name
24FROM sys.syscolumns sc1
25 CROSS JOIN sys.syscolumns sc2;
26
27CREATE STATISTICS t_st001 ON dbo.t (k) WITH FULLSCAN;
28CREATE STATISTICS t_st002 ON dbo.t (s) WITH FULLSCAN;
29
30DECLARE @k char(128) = 'a';
31DECLARE @s char(128) = '';
32SELECT s
33FROM dbo.t
34 LEFT JOIN sys.syscolumns sc ON t.s = sc.name
35WHERE dbo.t.s = @s
36 OR dbo.t.k = @k;