随笔分类 -  sql

摘要:with nolock 可以读脏数据,读的时候不向资源申请锁,不会被排它锁block readpast 不读有锁的数据,普通的读会被排他锁block 阅读全文
posted @ 2015-11-04 14:45 fannet
摘要:索引就是排序 + outer join笛卡儿积, inner join看情况。 可以用临时表加update的方式把outer join 替换成inner join提高性能。 + 用union代替where中的or 和join(不同表时) + join的列有索引,select 中的列能被索引覆盖... 阅读全文
posted @ 2015-11-03 10:56 fannet
摘要:set statistics io on 查看读写,sql读写的单位是一页8k,实际存储8060byte reads:逻辑读,缓存中取数据 physical reads:物理读,磁盘读到缓存 read ahead reads:预读,生成执行计划时估计的去读数据 DMV(sqlserver重启后... 阅读全文
posted @ 2015-11-03 10:25 fannet
摘要:goalter database [DBName] set single_user with rollback immediategodrop database [DBName]go右键stop 数据库restore 出错时,勾选override 阅读全文
posted @ 2015-05-15 09:42 fannet
摘要:SETSTATISTICS IO ON清除缓存DBCCDROPCLEANBUFFERSDBCCFREEPROCCACHE时间观察SET STATISTICS TIME ONparameter sniffing(reuse execution plan)ALTER PROCEDUREGet_Sales... 阅读全文
posted @ 2014-08-13 11:49 fannet
摘要:sql server中的三种连接:循环嵌套连接(Nested Loops Join),合并连接(Merge Join),散列连接(Hash Join)类似于问题:String 1: ABCDEFGHLMNOPQRSString 2: DCGSRQPOZstring2中的字符是否都在string1中出... 阅读全文
posted @ 2012-07-19 10:54 fannet
摘要:--构造测试数据: 只作演示用CREATE TABLE [dbo].[Tim_LinqTable]([Id] int PRIMARY KEY IDENTITY(1,1) NOT NULL,[Name] [varchar](50) NOT NULL,[Parent] int NOT NULL,)GOINSERT INTO [Tim_LinqTable] SELECT 'A',0 UNION ALLSELECT 'A1',1 UNION ALLSELECT 'A2',1 UNION ALLSELECT 'B1',2 UNION ALL 阅读全文
posted @ 2012-07-05 16:49 fannet
摘要:declare @ids varchar(max)set @ids=''select @ids=@ids+','+convert(varchar(10),product_id) from tblProduct where PublishToWeb=1select @ids 阅读全文
posted @ 2012-06-19 10:45 fannet
摘要:--读取库中的所有表名 select name from sysobjects where xtype='u' --读取指定表的所有列名 select name from syscolumns where id=(select max(id) from sysobjects where xtype='u' and name='表名')--依照officialDocument的表结构创建officialDocumentdraft表select * into officialDocumentdraft from officialDocument wh 阅读全文
posted @ 2011-08-25 17:24 fannet