收藏的SQLServer技巧集

 更新时间:2007年03月12日 00:00:00   作者:  
上次写了个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

相关文章

  • sql连接查询语句中on、where筛选的区别总结

    sql连接查询语句中on、where筛选的区别总结

    接触Sql语句时间挺长时间了,听他人说过sql语句的连接查询,但一直没有认真研究和使用过!下面这篇文章主要给大家介绍了关于sql连接查询语句中on、where筛选两者之间区别的相关资料,文中通过图文介绍的非常详细,需要的朋友们下面来一起看看吧。
    2017-07-07
  • 存储过程返回数组对象示例代码

    存储过程返回数组对象示例代码

    存储过程返回数组对象其实就相当于返回List里面放的对象数据,下面与大家分享是例子,感兴趣的朋友可以学习下
    2013-07-07
  • Hive常用日期格式转换语法

    Hive常用日期格式转换语法

    这篇文章主要为大家介绍了Hive常用日期格式转换语法的操作示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • Hbase列式存储入门教程

    Hbase列式存储入门教程

    HBase是一种分布式、可扩展、支持海量数据存储的NoSQL数据库。本文通过应用场景,性质特点给大家介绍Hbase列式存储入门教程,感兴趣的朋友一起看看吧
    2021-07-07
  • mybatis 项目配置文件实例详解

    mybatis 项目配置文件实例详解

    这篇文章主要介绍了mybatis 项目配置文件实例详解的相关资料,需要的朋友可以参考下
    2017-03-03
  • 使用dump transaction with no_log的危险性说明

    使用dump transaction with no_log的危险性说明

    在命令参考手册中的dump transaction with no_log条目下,有一条警告信息告诉你,你应该把这条命令作为没有其它办法时的最后一招才使用它
    2012-07-07
  • SQL Prompt--绝好的SQL语法提示工具

    SQL Prompt--绝好的SQL语法提示工具

    SQL Prompt--绝好的SQL语法提示工具...
    2007-03-03
  • 如何让你的SQL运行得更快

    如何让你的SQL运行得更快

    如何让你的SQL运行得更快...
    2007-06-06
  • 收藏的SQL知识以及SQL语句简单实践通俗易懂

    收藏的SQL知识以及SQL语句简单实践通俗易懂

    首先说明,这个笔者2年前学习SQL的遗漏下来的笔记,由于参加完腾讯的笔试,内容比较偏向数据机构和编译以及数据库,刚好要换台本本,心里不想把它弄死在硬盘里,觉得蛮好的,所以把它都分享了
    2012-06-06
  • 由拖库攻击谈口令字段的加密策略(数据库加密)

    由拖库攻击谈口令字段的加密策略(数据库加密)

    我不得不惨痛地写在前面的是,这是一个安全崩盘的时代。过去一年,已经证实的遭遇入侵、并导致关键数据被窃或者被泄露的公司,包括索尼、世嘉这样的大型游戏设备厂商;包括花旗银行这样的金融机构,也包括了RSA这样的安全厂商
    2012-01-01

最新评论