SQL
文章平均质量分 90
livening
这个作者很懒,什么都没留下…
展开
-
SQL按照日、周、月、年统计数据
SQL按照日、周、月、年统计数据 收藏 文章参考:http://www.cnblogs.com/wenbhappy/archive/2008/07/02/1233660.html如: 表:consume_record 字段:consume (money类型) date (datetime类型) 请问怎么写四条sql语句分别按日,按周,按月,按季统计消费总量. 如:1月 1200转载 2010-01-05 16:57:00 · 710 阅读 · 0 评论 -
查询库里每个表的大小
select OBJECT_NAME(ID) ,SIZE = sum(reserved) * CONVERT(FLOAT, (SELECT LOW FROM MASTER.DBO.SPT_VALUES WHERE NUMBER = 1 AND TYPE = E)) /1024.00/1024.00 --表大小(字节)= 8192 x Num_Pages (M) from原创 2010-04-07 09:57:00 · 669 阅读 · 0 评论 -
查询某表时排除指定字段外的其它字段方法
假设某表有很多字段a,b,。。。。 select * from tb 可以取出所有字段 但是目前不需要a字段,其余全要,有简便方法吗? declare @col nvarchar(1000) select @col=isnull(@col+,,)+name from syscolumns where id=object_id(sysobjects) and name转载 2010-04-28 12:17:00 · 2424 阅读 · 1 评论 -
SQL2008 Merge关键字用法与简例
--示例: USE tempdbGO--创建表AIF NOT OBJECT_ID([A]) IS NULL DROP TABLE [A]GOCREATE TABLE A(ID INT,ACOL VARCHAR(10))GOINSERT A VALUES(1,NA)INSERT A VALUES(2,NB)INSERT A VALUE转载 2010-04-28 12:19:00 · 507 阅读 · 0 评论 -
SQL2000/2005字符串拆分为列表通用函数
--SQL2000/2005字符串拆分为列表通用函数IF OBJECT_ID(f_getstr) IS NOT NULL DROP FUNCTION f_getstrGOCREATE FUNCTION f_getstr(@s NVARCHAR(4000), --待分拆的字符串@flag NVARCHAR(10)= --数据分隔符)RETU转载 2010-04-28 12:22:00 · 413 阅读 · 0 评论 -
charindex代替like并非"更快更全面"
<br />来源:http://blog.csdn.net/jinjazz/archive/2009/09/03/4516845.aspx<br /> <br /> 最近csdn的编辑们在社区和网站首页的标题让人有些受不了,一个吸引眼球的大红专题点进去只是一个聊聊数字的普通帖子..这种做法用来八卦也就算了,用来包装技术文章那是相当不负责的。<br /> 一个普普通通的技术博文,不管观点对错,水平如何,作者的拿出来分享的做法是值得肯定的,但在没有经过论证,人为在加上一个漂亮的副标题打到技术专区的首页上,转载 2010-08-04 11:20:00 · 529 阅读 · 0 评论 -
SQL2005CLR函数扩展-数据导出
<br />http://blog.csdn.net/jinjazz/archive/2009/04/29/4138000.aspx<br /> <br />SQLServer数据导出到excel有很多种方法,比如dts、ssis、还可以用sql语句调用openrowset。我们这里开拓思路,用CLR来生成Excel文件,并且会考虑一些方便操作的细节。<br />下面我先演示一下我实现的效果,先看测试语句<br />execBulkCopyToXls 'select * from testTable','d转载 2010-08-04 11:22:00 · 528 阅读 · 0 评论 -
SQLServer2005中的几个统计技巧
<br />来源:http://blog.csdn.net/jinjazz/archive/2009/09/03/4516845.aspx<br /> <br />先看下面的一个表格,我们从左边的两列信息来统计出右边的结果。<br /><br />在SQLServer中我们可以用over子句中来代替子查询实现来提高效率,over子句除了排名函数之外也可以和聚合函数配合。实现代码如下:<br />usetempdb<br />go<br />if (object_id ('tb' ) isnotnull )<转载 2010-08-04 11:25:00 · 362 阅读 · 0 评论 -
SQL Server查询速度慢原因及优化方法
SQL Server数据库查询速度慢的原因有很多,常见的有以下几种: 1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)2、I/O吞吐量小,形成了瓶颈效应。3、没有创建计算列导致查询不优化。4、内存不足5、网络速度慢6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量)7、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷)8、sp_lock,sp_who,活动的用户查看,原因是读写竞争资源。9、返回了不必要的行和列10、查询语句不好,没有优化 ●可以通过以下方法来优化查转载 2010-06-10 15:24:00 · 1423 阅读 · 0 评论 -
SQl Server 索引
以前对数据库也有过一段时间的研究,对数据库的物理存储机制也有所了解,刚看了freedk 写的《SQL Server 索引结构及其使用》受益非浅,我也真的意识到,数据库索引对系统性能的重要性。 在我的传统观念中,主键一般是应该设为聚集索引的,但现在有了新的认识,主键主要意义在于“唯一标识记录”关于主键的设计我也不再详述,可以参照我的《数据库主键设计之思考 》,而索引主要是“提高数据库性能”,尤其是“聚集索引”。 而现在我会注重数据库索引的建立,最关键的就是聚集索引,“聚集索引”与“非聚集索引”的理解很简转载 2010-08-30 23:50:00 · 448 阅读 · 0 评论 -
如何得到数据库中所有表字段及字段中文描述
1.按姓氏笔画排序:Select * From TableName Order By CustomerName Collate Chinese_PRC_Stroke_ci_as 2.数据库加密:select encrypt(原始密码)select pwdencrypt(原始密码)select pwdcompare(原始密码,加密后密码) = 1--相同;否则不相同 encr转载 2009-12-09 09:00:00 · 1815 阅读 · 2 评论 -
SQL中如何用一个表更新另一个表
for ACCESS :update a, b set a.name=b.name1 where a.id=b.idfor SQL Server:"update a set a.name=b.name1 from a,b where a.id=b.id" update a set a.status=b.status from table1 a,tab转载 2010-02-04 17:33:00 · 1381 阅读 · 0 评论 -
SQL server 2005 基础 (1)
而_则代表一个字符。例如"ab_"代表以ab 开头且长度为3的所有字符串[]用于表示0至9之间的字符。例如"ab[0-5]"用户表示一个以ab开头,后跟一个0至5之间数字的字符串。[^6-9]表示不在某一范围内的字符.. select * from Customers where CustomerID like a[NR]% Union 相当于集合运算中的并操作运算(A原创 2009-07-13 18:08:00 · 771 阅读 · 0 评论 -
sql 动态管理函数,自定义函数
--动态管理函数select login_name,count(session_id) as session_count from sys.dm_exec_sessions group by login_nameselect * from sys.dm_exec_sessionsselect * from sys.dm_exec_requests--了解当前数据库进程的阻塞信息select原创 2009-07-16 09:34:00 · 612 阅读 · 0 评论 -
Updated SQL Server 2000 Sample Database Files
Northwind and pubs Sample Databases for SQL Server 2000http://www.microsoft.com/downloads/details.aspx?familyid=06616212-0356-46a0-8da2-eebc53a68034&displaylang=en cmd 到D盘 D: 或 cd /d D:/ning新原创 2009-07-24 23:26:00 · 1183 阅读 · 0 评论 -
sql server 数据库包含的对象
一个数据库有多个数据库实例 对象 说明--------------------------------------------数据库对象 sql server 服务器中所含的对象 northwind表对象 文件组 视图 被看成虚拟表或存储查询,由select语原创 2009-07-24 23:43:00 · 1046 阅读 · 0 评论 -
大对象数据的访问控制 (2)
大对象(Large Ojbect,简称LOB)是指那些包含任何数字化信息的数据字段,数字化信息可以是音频、视频、图像以及文档等。这类数据多以大容量文件的形式出现,如声音文件或图像文件等。大对象数据可分为三种数据类型,即BLOB、CLOB和DBCLOB,分表表示二进制大对象数据(BINARY Large Object)、字符巨型对象数据(Character Large Object)和双字节巨型原创 2009-07-26 07:20:00 · 524 阅读 · 0 评论 -
SQL里类似SPLIT的分割字符串函数
-SQL对字符串的处理能力比较弱,比如我要循环遍历象1,2,3,4,5这样的字符串,如果用数组的话,遍历很简单,但是T-SQL不支持数组,所以处理下来比较麻烦。下边的函数,实现了象数组一样去处理字符串。一,用临时表作为数组create function f_split(@c varchar(2000),@split varchar(2)) returns @t ta转载 2009-09-14 18:06:00 · 400 阅读 · 0 评论 -
如何删除 SQL Server 表中的重复行
SELECT DISTINCT * INTO duplicate_table FROM original_table GROUP BY key_value HAVING COUNT(key_value) > 1 DELETE original_table WHERE key_value I转载 2009-09-18 17:16:00 · 532 阅读 · 0 评论 -
SQL日期格式化应用大全
Sql Server 中一个非常强大的日期格式化函数Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AMSelect CONVERT(varchar(100), GETDATE(), 1): 05/16/06Select CONVERT(varchar(100), GETDATE(), 2): 06.0转载 2010-01-22 18:47:00 · 524 阅读 · 0 评论 -
SQL SERVER 2000/2005 列转行 行转列
普通行列转换问题:假设有张学生成绩表(tb)如下:姓名 课程 分数张三 语文 74张三 数学 83张三 物理 93李四 语文 74李四 数学 84李四 物理 94想变成(得到如下结果): 姓名 语文 数学 物理 ---- ---- ---- ----李四 74 84 94张三 74 83 93---------------转载 2010-02-04 17:23:00 · 765 阅读 · 0 评论 -
sql查询优化
1、 用程序中,保证在实现功能的基础上,尽量减少对数据库的访问次数;通过搜索参数,尽量减少对表的访问行数,最小化结果集,从而减轻网络负担;能够分开的操作尽量分开处理,提高每次的响应速度;在数据窗口使用SQL时,尽量把使用的索引放在选择的首列;算法的结构尽量简单;在查询时,不要过多地使用通配符如SELECT * FROM T1语句,要用到几列就选择几列如:SELECT COL1,COL2转载 2010-02-04 17:29:00 · 1552 阅读 · 0 评论 -
sql事务和存储过程
sql事务和存储过程一、sql事务1.什么是事务:事务是一个不可分割的工作逻辑单元,在数据库系统上执行并发操作时事务是做为最小的控制单元来使用的。他包含的所有数据库操作命令作为一个整体一起向系提交或撤消,这一组数据库操作命令要么都执行,要么都不执行。2.事务的语句开始事物:BEGIN TRANSACTION提交事物:COMMIT TRANSACTION回滚事务:ROLLBACK TRANSACTI转载 2011-06-16 23:23:00 · 517 阅读 · 0 评论