SQL 相关
powerglover
这个作者很懒,什么都没留下…
展开
-
SQL 取日期部分函数
convert(varchar(10),getdate(),120) 这个函数就可以得到日期部分了,我觉得还是比较方便的,我觉得SQL在日期方面,没有ORACLE函数坐的好。。 Sql Server中的日期与时间函数 1. 当前系统日期、时间 select getdate() 2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值原创 2009-02-10 15:25:00 · 5020 阅读 · 0 评论 -
SQLServer : EXEC和sp_executesql的区别
原贴:http://www.cnblogs.com/xbf321/archive/2008/11/02/1325067.html MSSQL为我们提供了两种动态执行SQL语句的命令,分别是EXEC和sp_executesql;通常,sp_executesql则更具有优势,它提供了输入输出接口,而EXEC没有。还有一个最大的好处就是利用sp_executesql,能够重用执行计划,这就大大提供了执行性能(对于这个我在后面的例子中会详加说明),还可以编写更安全的代码。EXEC在某些情况下会更灵活。除转载 2010-06-21 13:52:00 · 266 阅读 · 0 评论 -
char、varchar、nchar、nvarchar的区别
<br />对于程序中的string型字段,SQLServer中有char、varchar、nchar、nvarchar四种类型来对应(暂时不考虑text和ntext),开建立数据库中,对这四种类型往往比较模糊,这里做一下对比。 定长或变长<br />所谓定长就是长度固定的,当输入的数据长度没有达到指定的长度时将自动以英文空格在其后面填充,使长度达到相应的长度;有var前缀的,表示是实际存储空间是变长的,比如varchar,nvarchar变长字符数据则不会以空格填充,比较例外的是,text存储的也是可变长转载 2010-06-21 10:36:00 · 223 阅读 · 0 评论 -
SQL SERVER 批量插入数据性能对比
参考网址:http://www.jb51.net/article/22533.htm 1. 普通 INSERT 语句 1秒1000行 2. 一条语句批量插入 3. 利用SqlBulkCopy 类.ADO.NET2.0的一个新的特性. http://msdn.microsoft.com/zh-cn/library/system.data.sqlclient.sq原创 2010-05-10 16:24:00 · 477 阅读 · 0 评论 -
关于索引的一道经典面试题
原文:http://kb.cnblogs.com/page/60097/ 问题:从100万条记录中的到 成绩最高的记录问题分析:要从一张表中找到成绩最高的记录并不难,有很多种办法,最简单的就是利用TOP 1 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlig转载 2010-04-09 10:53:00 · 316 阅读 · 0 评论 -
一次往同一张表里添加多条记录
在mssql可以这样insert into tablefortest(a,b) select 1,2unionselect 3,4unionselect 5,6在mysql可以这样insert into tablefortest(a,b)values(1,2) ,(3,4) ,(5,6)转载 2010-04-02 17:17:00 · 396 阅读 · 0 评论 -
SQL Server2005 四个排名函数(row_number、rank、dense_rank和ntile)的比较
转载地址:http://www.cnblogs.com/nokiaguy/archive/2009/02/05/1384860.html 排名函数是SQL Server2005新加的功能。在SQL Server2005中有如下四个排名函数:1. row_number2. rank3. dense_rank4. ntile 下面分别介绍一下这四个排名函数的功能及用法转载 2009-05-26 16:43:00 · 921 阅读 · 0 评论 -
了解SQL Server锁争用:NOLOCK 和 ROWLOCK 的秘密
关系型数据库,如SQL Server,使用锁来避免多用户修改数据时的并发冲突。当一组数据被某个用户锁定时,除非第一个用户结束修改并释放锁,否则其他用户就无法修改该组数据。 有些数据库,包括SQL Server,用锁来避免用户检索未递交的修改记录。在这些系统中,如果用户A在修改一组记录,则其他用户只有等用户A修改完毕了,才能检索。 数据库在每个物理层上设置锁:记录行(rows),数据页(pages,转载 2009-07-21 11:22:00 · 458 阅读 · 0 评论 -
SQL Server2005中实现行列转换
SQL Server2005引入了很多迎合开发者口味的新特性,虽然改动不大,却大大了减少了开发者的工作量,这种替用户考虑的开发思路,值得称赞。 在SQL Server2000中,要实现行列转换,需要综合利用聚合函数和动态SQL,实现起来需要一定的技巧,所以在CSDN的SQL讨论区里可以看到大量询问行列转换如何实现的问题。到了2005中,使用新引进的关键字PIVOT/UNPIVOT,可以轻松实现行列转载 2009-04-23 15:23:00 · 384 阅读 · 0 评论 -
SQL里的EXISTS与in、not exists与not in 效率比较和使用
在 MSSQL 中,插入(insert)一条记录很简单,但是一些特殊应用,在插入记录前,需要检查这条记录是否已经存在,只有当记录不存在时才执行插入操作,本文介绍的就是这个问题的解决方案。问题:我创建了一个表来存放客户信息,我知道可以用 insert 语句插入信息到表中,但是怎么样才能保证不会插入重复的记录呢?答案:可以通过使用 EXISTS 条件句防止插入重复记录。示例一:插入多条记录转载 2009-02-18 10:44:00 · 4772 阅读 · 0 评论 -
SQL语言的CASE语句备忘
SQL语言的CASE语句备忘 概述:SQL语句中的CASE语句与高级语言中的switch语句,是标准SQL的语法,适用与一个条件判断有多种值的情况下分别执行不同的操作。灵活应用CASE语句可以使SQL语句变得简洁易读,下面在DB2环境下通过一个简单的查询来展示SQL CASE语句的强大功能。 环境:Windows XP Profession转载 2009-02-16 10:31:00 · 544 阅读 · 0 评论 -
sql server中的convert日期格式化大全
CONVERT将某种数据类型的表达式显式转换为另一种数据类型。由于某些需求经常用到取日期格式的不同.现以下可在SQL Server中 将日期格式化.SQL Server 支持使用科威特算法的阿拉伯样式中的数据格式。在表中,左侧的两列表示将 datetime 或 smalldatetime 转换为字符数据的 style 值。给 style 值加 100,可获得包括世纪数位的四位年份原创 2009-02-10 15:28:00 · 917 阅读 · 0 评论 -
相关领域小的知识点
SQL SERVERQUOTENAME 返回带有分隔符的 Unicode 字符串,分隔符的加入可使输入的字符串成为有效的 SQL Server 分隔标识符。http://technet.microsoft.com/zh-cn/library/ms176114.aspx原创 2010-06-21 14:11:00 · 363 阅读 · 0 评论