随笔分类 - SQL SERVER
摘要:对比索引、视图、游标、存储过程和触发器 1、索引 1-1、索引的概述 我们把一个表中的一列或者多列和列中元素所在表中记录的物理地址组合成一个新的表。这个表的记录大致为列的内容和该列所在记录的物理地址。 1-2、索引的优缺点 优点:大大加快了对源表的执行速度,我们对索引表的检索就可以实现对源表的检索。
阅读全文
摘要:获取数据字段(表的字段和类型信息) SELECT 表名=case when a.colorder=1 then d.name else '' end, 表说明=case when a.colorder=1 then isnull(f.value,'') else '' end, 字段序号=a.col
阅读全文
摘要:解决SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问的方法出错 1、开启Ad Hoc Distributed Queries组件,在sql查询编辑器中执行如下语句: ex
阅读全文
摘要:创建链接服务器 exec sp_addlinkedserver 'ITSV', ' ', 'SQLOLEDB', '远程服务器名或ip地址' exec sp_addlinkedsrvlogin 'ITSV', 'false ',null, '用户名', '密码' --查询示例 select * fr
阅读全文
摘要:SQL Server 小数类型(float 和 decimal) 在SQL Server中,实际上小数数值只有两种数据类型:float 和 decimal,分别是近似数值和精确数值。其他小数类型,都可以使用float和decimal来替代,例如,双精度(double precision)数据类型等价
阅读全文
摘要:sql:将秒转化成时分秒格式 DECLARE @a int=20000 SELECT CONVERT(VARCHAR(10),@a/60)+'分'+CONVERT(VARCHAR(10),@a%60)+'秒' --333分20秒 SELECT CONVERT(VARCHAR(10),@a/3600)
阅读全文
摘要:SELECT显示和PRINT打印超长的字符 从SQL Server 2005开始,引入了varchar(max) / nvarchar(max) 数据类型,表中可不使用LOB数据类型,从而突破单列8000 / 4000字符的限制,动态SQL也可以拼接得更长;但查看这类字符的时候,在某些地方,字符长度
阅读全文
摘要:SQLServer 查看SQL语句的执行时间 在MSSQL Server中通过查看SQL语句执行所用的时间,来衡量SQL语句的性能。 通过设置STATISTICS我们可以查看执行SQL时的系统情况。选项有PROFILE,IO ,TIME。介绍如下: SET STATISTICS PROFILE ON
阅读全文
摘要:SELECT * FROM OpenDataSource( 'Microsoft.ACE.OLEDB.12.0','Data Source="d:\test.xlsx";Extended properties=Excel 12.0')...[sheet1$] 1、错误提示:尚未注册 OLE DB 访
阅读全文
摘要:SQL2000自制row_number SELECT (SELECT COUNT(*) FROM main1 p1 WHERE p1.编号 <= p2.编号) AS rowNumber, * FROM main1 p2 ORDER BY 编号 很简单,但是数据量大的时候会十分的消耗性能 sql se
阅读全文
摘要:Sql server bulk insert Bulk Insert Sql server 的bulk insert语句可以高效的导入大数据量的平面文件(txt,csv文件)到数据库的一张表中,其用法如下: bulk insert test from 'f:\test.txt' with (fiel
阅读全文
摘要:有表tb, 如下: id value 1 aa,bb 2 aaa,bbb,ccc 欲按id,分拆value列, 分拆后结果如下: id value 1 aa 1 bb 2 aaa 2 bbb 2 ccc */ --1. 旧的解决方法(sql server 2000) create table tb(
阅读全文
摘要:CHARINDEX作用 写SQL语句我们经常需要判断一个字符串中是否包含另一个字符串,但是SQL SERVER中并没有像C#提供了Contains函数,不过SQL SERVER中提供了一个叫CHAEINDX的函数,顾名思义就是找到字符(char)的位置(index),既然能够知道所在的位置,当然就可
阅读全文
摘要:一、行转字符串,用逗号分开 1、记录显示为字符串,用逗号分开: SELECT 字段+',' FROM 表名 FOR XML PATH('') 2、分组将记录显示为字符串,每个字符串用逗号分开 select 分组字段,STUFF((select ','+字段 from 表 a where a.分组字段
阅读全文
摘要:1、概念: EXCEPT主要是用来获取两个结果集的差;两个结果用EXCEPT链接,返回第一个结果集不在第二个结果集中的数据。 INTERSECT主要是用来获取两个结果集的交集;两个结果用INTERSECT链接,返回两个结果集中的相同部分 2、条件: (1)所有查询中的列数和列的顺序必须相同。(2)比
阅读全文
摘要:sql处理百万级以上的数据提高查询速度的方法 sql处理百万级以上的数据提高查询速度的方法 sql处理百万级以上的数据提高查询速度的方法 sql处理百万级以上的数据提高查询速度的方法 处理百万级以上的数据提高查询速度的方法: 1.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使
阅读全文
摘要:SqlServer中Sql查看存储过程 ( 一)利用Sql语句查询数据库中的所有表 1.利用sysobjects系统表 1 select * from sysobjects where xtype='U' 2,利用sys.tables目录视图 sys.tables目录视图,为每个表对象返回一行. 1
阅读全文
摘要:sql server2008系统表详细说明sys.开头的表 一、库里有多少个表,表名等 select * from INFORMATION_SCHEMA.TABLES 二、查询表、字段、类型、是否主键、长度、小数位、是否允许空、默认值等详细查询 效果: SELECT (case when a.col
阅读全文
摘要:1.安装相关组件 2.程序生成属性32位改为64位
阅读全文
摘要:【方法一】 --开启导入功能 exec sp_configure 'show advanced options',1 reconfigure exec sp_configure 'Ad Hoc Distributed Queries',1 reconfigure --允许在进程中使用ACE.OLED
阅读全文