• 使用table数据类型变量获得临时表


    转自:http://chenxing.blog.51cto.com/240526/44613

    Table数据类型是一种特殊的数据类型,用于存储结果集以供后续处理。该数据类型主要用于临时存储一组行,这些行将作为表值函数的结果集返回
    Table数据类型最主要的用途是作为多条数据记录的临时存储之处,此外还可以作为一个用户定义函数的返回值。
    用户需要注意使用DECLARE @local_variable来声明table类型的变量
    --声明TABLE变量@Var_tableGoods
    DECLARE @Var_tableGoods TABLE
                         (
                          订单编号 [int] NOT NULL,
                          书籍编号 [int] NOT NULL,
                          单价 [money] NOT NULL,
                          数量 [smallint] NOT NULL,
                          折扣 [real] NOT NULL
                          )
    --将”作者表”中统计的数据添加到TABLE变量@Var_tableAuthor
    INSERT INTO @Var_tableGoods
      SELECT * FROM 订货表
    --将TABLE变量@Var_tableAuthor中的内容显示出来
    SELECT * FROM @Var_tableGoods
    Table变量有以下优点:
    1)Table变量的行为类似于局部变量,定义有明确的作用域,该作用域为声明该变量的函数、存储过程或批处理的作用范围。
    2)在其作用域内,table变量可像常规表那样使用。该变量可应用于SELECT、INSERT、UPDATE和DELETE语句中用到表或表的表达式的地方。
    3)在定义table变量的函数、存储过程或批处理结束时,自动清除table变量
    4)在存储过程中使用表变量与使用临时表相比,减少了存储过程的重新编译量。
    5)涉及表变量的事务只在表变量更新期存在,这样就减少了表变量对锁定和记录资源的需求。
    6)不支持在表变量之间进行赋值操作。另处,由于表变量作用域有限,并且不是持久数据库的一部分,因而不受事务回滚的影响。
  • 相关阅读:
    php的单例模式
    php如何读取ini文件
    MIDI制作的相关软件
    PHP网站http替换https
    Linux Samba服务器配置
    DHCP安装配置详解
    html表格内容自动换行
    js版根据经纬度计算多边形面积(墨卡托投影)
    根据经纬度计算多边形面积
    百度地图API画多边型,测面积
  • 原文地址:https://www.cnblogs.com/clq271520093/p/2512942.html
Copyright © 2020-2023  润新知