经典sql语句大全-yubinfeng-博客园

经典sql语句大全-yubinfeng-博客园

ID:11825440

大小:18.15 KB

页数:14页

时间:2018-07-14

经典sql语句大全-yubinfeng-博客园_第1页
经典sql语句大全-yubinfeng-博客园_第2页
经典sql语句大全-yubinfeng-博客园_第3页
经典sql语句大全-yubinfeng-博客园_第4页
经典sql语句大全-yubinfeng-博客园_第5页
资源描述:

《经典sql语句大全-yubinfeng-博客园》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、经典SQL语句大全-yubinfeng-博客园 、说明:一条sql语句搞定数据库分页selecttop10b.*from(selecttop20主键字段,排序字段from表名orderby排序字段desc)a,表名bwhereb.主键字段=a.主键字段orderbya.排序字段具体实现:关于数据库分页: declare@startint,@endint @sql nvarchar(600) set@sql=’selecttop’+str(@end-@start+1)+’+fromTwhereridno

2、tin(selecttop’+str(@str-1)+’RidfromTwhereRid>-1)’ execsp_executesql@sql注意:在top后不能直接跟一个变量,所以在实际应用中只有这样的进行特殊的处理。Rid为一个标识列,如果top后还有具体的字段,这样做是非常有好处的。因为这样可以避免top的字段如果是逻辑索引的,查询的结果后实际表中的不一致(逻辑索引中的数据有可能和数据表中的不一致,而查询时如果处在索引则首先查询索引)altertabletablename--添加一个自增列

3、add column_bintidentity(1,1) deletefromtablenamewherecolumn_bnotin(selectmax(column_b) fromtablenamegroupbycolumn1,column2,...)altertabletablenamedropcolumncolumn_bTRUNCATETABLEtable1“where1=1”是表示选择全部   “where1=2”全部不选,如:if@strWhere!=''beginset@strSQL='s

4、electcount(*)asTotalfrom['+@tblName+']where'+@strWhereendelsebeginset@strSQL='selectcount(*)asTotalfrom['+@tblName+']'end错误!未找到目录项。set@strSQL='selectcount(*)asTotalfrom['+@tblName+']where1=1安定'+@strWhere2、收缩数据库--重建索引DBCCREINDEXDBCCINDEXDEFRAG--收缩数据和日志DB

5、CCSHRINKDBDBCCSHRINKFILEUSEtablename--要操作的数据库名SELECT @LogicalFileName='tablename_log',--日志文件名@MaxMinutes=10,--Limitontimeallowedtowraplog. @NewSize=1 --你想设定的日志文件的大小(M)Setup/initializeDECLARE@OriginalSizeintSELECT@OriginalSize=size FROMsysfiles WHEREname

6、=@LogicalFileNameSELECT'OriginalSizeof'+db_name()+'LOGis'+ CONVERT(VARCHAR(30),@OriginalSize)+'8Kpagesor'+ CONVERT(VARCHAR(30),(@OriginalSize*8/1024))+'MB' FROMsysfiles WHEREname=@LogicalFileNameCREATETABLEDummyTrans (DummyColumnchar(8000)notnull)DECLAR

7、E@Counter   INT, @StartTimeDATETIME, @TruncLog  VARCHAR(255)SELECT@StartTime=GETDATE(), @TruncLog='BACKUPLOG'+db_name()+'WITHTRUNCATE_ONLY'DBCCSHRINKFILE(@LogicalFileName,@NewSize)EXEC(@TruncLog)--Wrapthelogifnecessary.WHILE@MaxMinutes>DATEDIFF(mi,@S

8、tartTime,GETDATE())--timehasnotexpired AND@OriginalSize=(SELECTsizeFROMsysfilesWHEREname=@LogicalFileName)   AND(@OriginalSize*8/1024)>@NewSize   BEGIN--Outerloop.SELECT@Counter=0 WHILE  ((@Counter<@OriginalSize/16)AND(@Cou

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。