收藏的SQLServer技巧集

所属分类: 数据库 / 数据库其它 阅读数: 100
收藏 0 赞 0 分享
上次写了个ACCESS技巧集,反映良好,这次来个SQL语句特殊技巧吧

1.把某个字段重新生气序列(从1到n):
DECLARE @i int
Set @i = 0
Update Table1 Set @i = @i + 1,Field1 = @i

2.按成绩排名次
Update 成绩表
Set a.名次 = (
Select Count(*) + 1
From 成绩表 b
Where a.总成绩 < b.总成绩
)
From 成绩表 a

3.查询外部数据库
Select a.*
From OpenRowSet('Microsoft.Jet.OLEDB.4.0','c:\test.mdb';'admin';'',Table1) a

4.查询Excel文件
Select * 
From OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 8.0')...Sheet1$

5.在查询中指定排序规则
Select * From Table1 Order By Field1 COLLATE Chinese_PRC_BIN
为什么要指定排序规则呢?参见:
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1633985
例,检查数据库中的Pub_Users表中是否存在指定的用户:
Select Count(*) From Pub_Users Where [UserName]='admin' And [PassWord]='aaa' COLLATE Chinese_PRC_BIN
默认比较是不区分大小写的,如果不加COLLATE Chinese_PRC_BIN,那么密码aaa与AAA是等效的,这当然与实际不符.注意的是,每个条件都要指定排序规则,上例中用户名就不区分大小写.


6.Order By的一个小技巧
Order By可以指定列序而不用指定列名,在下面的例子里说明它的用处(注意,第三列未指定别名)
Select a.ID,a.Name,(Select Count(*) From TableB b Where a.ID=b.PID) From TableA a Order By 3
更多精彩内容其他人还在看

ACCESS转SQLSERVER数据库的注意事项

Access承重量太低,当你考虑升级到SQL Server时,并不只是个连接字符串需要改变,需要改变的还有很多
收藏 0 赞 0 分享

数据库设计技巧[转]

数据库设计技巧[转]
收藏 0 赞 0 分享

iwms access与sql版的安装与转换

iwms access与sql版的安装与转换
收藏 0 赞 0 分享

[转载]让SQL运行得更快

笔者在工作实践中发现,不良的SQL往往来自于不恰当的索引设计、不充份的连接条件和不可优化的where子句。在对它们进行适当的优化后,其运行速度有了明显地提高!下面我将从这三个方面分别进行总结
收藏 0 赞 0 分享

[数据库] 通用分页存储过程第1/5页

[数据库] 通用分页存储过程
收藏 0 赞 0 分享

Access数据库升级为SQL数据库的注意事项和方法

Access数据库升级为SQL数据库的注意事项和方法
收藏 0 赞 0 分享

Win2003系统安装SQL Server2000后1433端口未开放的解释

这篇文章主要介绍了Win2003系统安装SQL Server2000后1433端口未开放的解释
收藏 0 赞 0 分享

SQL SERVER 与ACCESS、EXCEL的数据转换

SQL SERVER 与ACCESS、EXCEL的数据转换
收藏 0 赞 0 分享

Access转SqlServer的注意事项

Access转SqlServer的注意事项,需要的朋友可以参考下。
收藏 0 赞 0 分享

数据库的设计方法、规范与技巧

数据库的设计方法、规范与技巧
收藏 0 赞 0 分享
查看更多