对于复杂的查询,我们可以使用嵌套的复杂的SQL语句来实现,但是有些时候,借助于临时表,可以更加方便、高效。

SQL Server 支持临时表。临时表就是那些名称以井号 (#) 开头的表。如果当用户断开连接时没有除去临时表,SQL Server 将自动除去临时表。临时表不存储在当前数据库内,而是存储在系统数据库 tempdb 内。

临时表有两种类型:
1)本地临时表:本地临时表的名称以单个数字符号 (#) 打头;它们仅对当前的用户连接是可见的;当用户从 Microsoft SQL Server 2000 实例断开连接时被删除。
2)全局临时表:全局临时表的名称以数学符号 (##) 打头,创建后对任何用户都是可见的。如果在创建全局临时表的连接断开前没有显式地除去这些表,那么只要所有其它任务停止引用它们,这些表即被除去。当创建全局临时表的连接断开后,新的任务不能再引用它们。当前的语句一执行完,任务与表之间的关联即被除去;因此通常情况下,只要创建全局临时表的连接断开,全局临时表即被除去。
例如,如果创建名为 employees 的表,则任何人只要在数据库中有使用该表的安全权限就可以使用该表,除非它已删除。如果创建名为 #employees 的本地临时表,只有您能对该表执行操作且在断开连接时该表删除。如果创建名为 ##employees 的全局临时表,数据表中的任何用户均可对该表执行操作。如果该表在您创建后没有其他用户使用,则当您断开连接时该表删除。如果该表在您创建后有其他用户使用,则 SQL Server在所有用户断开连接后删除该表。

e.g.

create table #TempTableName

select [字段1,字段2,...,] into #TempTableName from table
删除表:
drop table #TempTableName

MS SQL SERVER中的临时表相关推荐

  1. sql oracle 自增长字段,在Oracle、MySQL、MS SQL Server中创设自动增长字段

    在Oracle.MySQL.MS SQL Server中创建自动增长字段 好吧,今天面试有道题,要各个数据库怎么建立自增长字段,顺便复习一下吧,最近面试很多数据库问题... 一:Oracle Orac ...

  2. MS SQL Server中的CONVERT日期格式化大全

    來源:http://www.knowsky.com/345490.html CONVERT 将某种数据类型的表达式显式转换为另一种 数据类型.由于某些需求经常用到取日期格式的不同.现以下可在 SQL ...

  3. MS SQL SERVER 中merge join合并连接介绍(转)

    1概述 Merge join 合并连接.两个集合进行merge join,需要有一个等值的条件,然后需要两个已排序好的集合. 2 one-to-many与many-to-many 2.1 One-to ...

  4. MS SQL SERVER 中几个函数的用法

    1.STUFF 将第一个参数,从第start位置开始的length个字符(包含第start位置,位置从1开始),用第四个参数替换. Syntax ( character_expression , st ...

  5. MS SQL SERVER中备份所有数据库

    建立一个存储过程,每次备份时执行这个过程,如果愿意的话也可以在sql中做个任务来每周调用. CREATE PROCEDURE p_BackAllDatabase (    @path nvarchar ...

  6. MS sql server和mysql中update多条数据的例子

    1. MS sql server中使用动态的表名:declare @tableName nvarchar(160) set @tableName = 't_stat_all' declare @sql ...

  7. Oracle 9i与MS SQL Server 2000之比较连载五.zz

    http://kb.cnblogs.com/a/1153156 Oracle 9i与MS SQL Server 2000之比较连载五 2008-04-14 18:13 四.Oracle中新的数据库对象 ...

  8. 用MS SQL Server事件探查器来跟踪数据库的操作

    在MS SQL Server中,除了我们常用的企业管理器和查询分析器之外,还有一个非常有用的工具--事件探查器.由于这两天,我需要知道一个ASP.NET程序对某个数据库的哪些表进行了哪些操作,所以才发 ...

  9. SQL Server中的表变量

    In this article, we will explore the table variable in SQL Server with various examples and we will ...

  10. sql ddl中key_SQL DDL:SQL Server中SQL DDL命令入门

    sql ddl中key This article explains SQL DDL commands in Microsoft SQL Server using a few simple exampl ...

最新文章

  1. RHEL6系列更换epel源
  2. SQL SERVER出现大量一致性错误的解决方法
  3. 批处理检查电脑是否中了冰河木马
  4. 安卓APP_ 控件(9)—— PopupWindow弹窗
  5. Python基础教程,流程控制语句详解
  6. camel Java to xml_java – 当Camel从XML文件加载路由时,在注册表中找不到Bean
  7. VMware NSX for vSphere 6.3.0 发行说明
  8. 观电影《头号玩家》有感
  9. curl以cookie的方式登录
  10. 【微信公众号开发系列文章】一、微信公众号开发环境搭建
  11. java 词云_在线词云生成工具
  12. 个人公众号注销方法_微信公众号注销后怎么申请 恢复公众号的方法步骤
  13. 域名解析CNAME和MX记录 冲突 解决办法
  14. android8.0内置壁纸,一加手机8pro内置壁纸分享
  15. 利用原生写js满天星星
  16. 5gh掌上云计算认证不通过_华为云计算认证含金量怎么样?
  17. android关于 text_to_speach的使用(tts)
  18. PostgreSQL登录及修改密码
  19. android+6.0+通讯录,Android6.0的通讯录获取
  20. kali渗透测试与教学笔记10

热门文章

  1. ios md5 原理_iOS实现MD5加密
  2. linux qt读取显示图片,QT学习篇(二) 使用QPixmap显示一张图片
  3. web自动化知识点-03
  4. java中成绩转换_成绩转换
  5. java怎么根据编号修改数据类型_Java中怎么根据不同的输入数据类型调用不同的方法呢?...
  6. github仓库的ssh_gitHub注册账户以及创建仓库
  7. matlab 正弦波 fft,【求助】正弦信号序列fft频谱分析!!!
  8. JavaScript:在JS中截取字符串的方法
  9. Linux命令行截屏,Scrot:Linux 命令行截屏工具
  10. 直线检测原理matlab,Hough变换 直线检测原理及其Matlab实现