当前位置:  数据库>sqlserver

sql高级技巧几个有用的Sql语句

    来源: 互联网  发布时间:2014-09-05

    本文导语:  1、例如:有两个表A(字段1,字段2,字段3)、B(字段2,字段3),其中存储数据如下所示表A 字段1 字段2 字段3 1 地段内容1 1 地段内容1 2 地段内容2 2 地段内容2 3 地段内容3 4 地段内容4 5 地段内容5 5 地段内容5 5 ...

1、例如:有两个表A(字段1,字段2,字段3)、B(字段2,字段3),其中存储数据如下所示
表A
字段1 字段2 字段3 1 地段内容1 1 地段内容1 2 地段内容2 2

地段内容2

3 地段内容3 4 地段内容4 5 地段内容5 5 地段内容5 5 地段内容5 6 地段内容6 7 地段内容7 8 地段内容8 8 地段内容8 8 地段内容8 8 地段内容8
表B
字段2 字段3 wdz1 地段内容1 wdz2 地段内容3 wdz3 地段内容5 wdz4 地段内容6 wdz5 地段内容7 wdz6 地段内容8
使用下面的Sql语句(可以达到将表A中字段3与表B中字段3相同的数据字段2填充到表A中的字段2)
update 表1 set 字段1 = (select 字段1 from 表2 where 表1.字段3=表2.字段3)
结果如下表所示
表A结果
字段1 字段2 字段3 1 wdz1 地段内容1 1 wdz1 地段内容1 2 地段内容2 2

地段内容2

3 wdz2 地段内容3 4 地段内容4 5 wdz3 地段内容5 5 wdz3 地段内容5 5 wdz3 地段内容5 6 wdz4 地段内容6 7 wdz5 地段内容7 8 wdz6 地段内容8 8 wdz6 地段内容8 8 wdz6 地段内容8 8 wdz6 地段内容8
下面是本条Sql语句的网友意见
一、“江千帆
update 表1 set 字段1 = (select 字段1 from 表2 where 表1.字段3=表2.字段3)
的效率很低,如果有X条记录,会导致子查询执行X次.
如果我们这样写,就可以充分利用索引(如果两表在字段3上面都建立了索引),并且避免不必要的多次执行。
update 表1 set 表1.字段2 =表2.字段2 from 表1 inner join 表2 on 表1.字段3=表2.字段3

网友意见归纳结束。

2、例如:如第1点中的表A相同,需要查询出表A的重复数据的Sql语句如下
select 字段1 from 表A group by 字段1 having count(字段3) > 1
查询结果如下
表A查询结果
字段1 1 2 5 83、例如:需要在Sql Server2000中查询处某固定物理路径的X1.dbf文件,使用的Sql语句如下(必须先安装VF驱动才能使用此Sql语句)
select * from OpenDataSource('VFPOLEDB.1','User ID=;DSN=;Collating Sequence=MACHINE;Data Source=C:dbfFilesX1.dbf;Password=;Cache Authentication=False;Mask Password=False;Mode=Share Deny None;Extended Properties=;Encrypt Password=False')...X1
注:其他的非VF数据库文件的查询类似,只需要设置OpenDataSource中的参数即可。参数说明为OpenDataSource(数据源驱动名,数据源连接字符串)

    
 
 

您可能感兴趣的文章:

  • mysql中查询当前正在运行的SQL语句并找出mysql中运行慢的sql语句
  • oracle导出sql语句的结果集和保存执行的sql语句(深入分析)
  • Mysql增加主键或者更改表的列为主键的sql语句
  • sql语句实例 取得日志条目的sql语句
  • Mysql下在某一列后即表的某一位置添加新列的sql语句
  • SQL Server统计SQL语句执行时间的脚本
  • sql语句实例 统计页面链接的sql语句
  • 如何实现连接一次数据库,提交多个sql语句。(sql的批处理)
  • 一条SQL语句搞定Sql2000 分页
  • C#中验证sql语句是否正确(不执行语句)
  • SQL Server数据库的修复SQL语句
  • SQL 语句拦截 P6SPY
  • C#使用带like的sql语句时防sql注入的方法
  • t-sql/mssql用命令行导入数据脚本的SQL语句示例
  • 在SQL Server的try...catch语句中获取错误消息代码的的语句
  • sql2005创建远程登录帐户的sql语句分享
  • SQL SERVER 查询正在实行的SQL语句
  • SQL语句中含有乘号报错的处理办法
  • sql无效字符引起的执行sql语句报错的解决方法
  • C#代码验证sql语句是否正确(只验证不执行sql)的方法
  • SQL Server中选出指定范围行的SQL语句代码
  • SQL Server统计SQL语句执行时间的脚本 iis7站长之家
  • sql server 2005中一些有用的函数与存储过程
  • 有用的SQL语句(删除重复记录,收缩日志)
  • 一些有用的sql语句整理 推荐收藏
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • SQL语句技巧:按月统计数据
  • sql2005统计技巧示例
  • ORACLE SQL-UPDATE、DELETE、INSERT优化和使用技巧分享
  • oracle—SQL技巧之(一)连续记录查询sql案例测试
  • SQL小技巧 又快又简单的得到你的数据库每个表的记录数
  • sql2005 存储过程技巧点滴记录
  • SQL Server数据库实用技巧
  • sql 查询结果合并union all用法_数据库技巧
  • 教你轻松学会SQL Server记录轮班的技巧
  • 编程经验点滴 动态SQL的拼接技巧
  • oracle—SQL技巧之(二)WMSYS.WM_CONCAT函数实现多行记录用逗号拼接在一起
  • SQL Server 服务器优化技巧浅谈
  • SQL集合函数中case when then 使用技巧
  • 优化 SQL Server 索引的小技巧
  • sql分组排序与分组统计技巧
  • 经典SQL语句大全-技巧篇
  • sql排序、分组、统计十种方法技巧
  • sql server日期函数及使用技巧
  • sql优化技巧大全 sql优化注意事项
  • SQL进行排序、分组、统计的10个新技巧分享
  • java命名空间java.sql接口statement的类成员方法: executeupdate定义及介绍
  • 请问,这是什么错误!java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][Named Pipes]??????? SQL Server?虽然分少,但一定给,只要您是前5名回复者中最好的以为!
  • java命名空间java.sql接口connection的类成员方法: nativesql定义及介绍
  • SQL查询分析工具 SQL Workbench/J
  • java命名空间java.sql接口preparedstatement的类成员方法: executeupdate定义及介绍
  • SQL客户端软件 PKLite SQL Client
  • java命名空间java.sql接口rowid的类成员方法: getbytes定义及介绍
  • SQL语句实现SQL Server 2000及Sql Server 2005日志收缩(批量)
  • java命名空间java.sql接口ref的类成员方法: getbasetypename定义及介绍
  • SQL客户端管理工具 SQuirreL SQL Client
  • java命名空间java.sql接口databasemetadata的类成员方法: getsqlkeywords定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3