SQL中Table型数据(表变量)与用户自定义函数(downmoon)
SQL中Table型数据与用户自定义函数(downmoon)
SQL Server 2000 新增了Table型数据:Table型数据不能用来定义列的类型,只能用作T-SQL变量或者作为自定义函数的返回值,下例是一个简单的table 型数据的例子:
(Cola int Primary Key ,Colb char ( 3 ))
Insert Into @TableVar Values ( 1 , ' abc ' )
Insert Into @TableVar Values ( 2 , ' def ' )
Select * From @TableVar
以上语句定义了一个名为TableVar,有两列的table 型变量像通常的表一样table 型数据也有insert select 等操作。在SQL Server 2000 中table 型数据与用户自定义函数是密不可分的,SQL Server 2000支持两种类型的函数:内置函数和用户定义函数。内置函数只允许T-SQL 语句调用而不能更改使用。用户定义函数可以根据需要定义自己所需的函数。用户定义函数可以带参数,也可以不带参数,但只能返回单值。正是由于这个原因SQL Server 2000 增加了table 型数据 ,其值可以是整型字符型或数值型。下例是一个简单的用户定义函数说明了用户定义函数的基本结构:
( @CubeLength decimal ( 4 , 1 ), @CubeWidth decimal ( 4 , 1 ), @CubeHeight decimal ( 4 , 1 ) )
Returns decimal ( 12 , 3 )
As
Begin
Return ( @CubeLength * @CubeWidth * @CubeHeight )
End
-- SELECT AppDta.dbo.CubicVolume (10,8,6)
在上例中用CREATE FUNCTION 创建了一个函数CubicVolume 来计算立方体的体积,变量CubeLength CubeWidth CubeHeight 为输入参数,返回值为数值型。BEGIN 表明函数体的开始,END 表明函数体的结束。通过下例 我们就会清楚用户定义函数与table 型数据是如何有机结合的:
Create Function SalesByStore( @storeid varchar ( 30 ))
Returns Table
As
Return ( Select title, qty From sales s, titles t
Where s.stor_id = @storeid and t.title_id = s.title_id)
-- select * from sales
SELECT Pubs.dbo.SalesByStore( 7131 )
邀月注:本文版权由邀月 和CSDN共同所有,转载请注明出处。
助人等于自助! 3w@live.cn
SQL中Table型数据(表变量)与用户自定义函数(downmoon)相关推荐
- [导入]SQL中的临时表和表变量
我们经常使用临时表和表变量,那现在我们就对临时表和表变量进行一下讨论. 临时表 局部临时表 全局临时表 表变量 临时表 临 时表存储在TempDB数据库中,所有的使用此SQL Server 实例的用户 ...
- 如何使用 SQL CREATE TABLE 创建新表
文章目录 一.创建表 1.1 表创建基础 1.2 使用 NULL 值 1.3 指定默认值 二.更新表 三.删除表 四.重命名表 五.小结 本文介绍如何使用 SQL CREATE TABLE 创建新表, ...
- SQL Server中的内存优化表变量
This article will cover the usage details and performance advantages of the memory-optimized table v ...
- SqlServer 中的临时表与表变量
我们在数据库中使用表的时候,经常会遇到两种使用表的方法,分别就是使用临时表及表变量.在实际使用的时候,我们如何灵活的在存储过程中运用它们,虽然它们实现的功能基本上是一样的,可如何在一个存储过程中有时候 ...
- [网摘]动态SQL中set与select对变量赋值的影响
在动态SQL中,存在着多种对字符变量赋值的方法.其中set和select使用的朋友最多.对于像我一样的小鸟来说,可能只是会用这两个方法而已,并没有真正理解这两个方法的真正内涵.我个人的理解是这样的:s ...
- 在内存中创建临时表和表变量
在Disk-Base数据库中,由于临时表和表变量的数据存储在tempdb中,如果系统频繁地创建和更新临时表和表变量,大量的IO操作集中在tempdb中,tempdb很可能成为系统性能的瓶颈.在SQL ...
- SQL中 left join 左表合并去重实用技巧
作者:ZhaoYingChao88 zyc88.blog.csdn.net/article/details/83002882 建表: CREATE TABLE `table1` (`id` int( ...
- 博图如何读取mysql数据_博途使用小结:从SQL中读取数据并给变量赋值
1.建立内部变量TON_Report,VF01_Runtime,JC01_Runtime,VF05_Runtime,数据类型为Real,长度为2 2.建立查询按钮,点击查询按钮时读取SQL中的数据并赋 ...
- dates.format_在SQL中使用DATES及其不同的内置函数NOW(),FORMAT()
dates.format Basically, when we are working with dates, we need to be sure that the format of the da ...
最新文章
- go微服务框架go-micro深度学习(一) 整体架构介绍
- Linux 编程中的API函数和系统调用的关系【转】
- 爬取虎牙之一:(王者荣耀主播信息普通爬取)
- Struts2 datetimepicker 日期月份乱码解决
- 检查一列数据的重复项 vba_提取重复值,但字典不是重点。
- EverNote第三方API接口测试
- 图解TCPIP-传输层 TCP报文
- python中文显示不出来_Python查询数据库,中文的结果显示不出来
- Npm更新移除包的规则
- Linux下从零搭建WordPress
- 【p2p】【EdgeVPNio (evio)】简介: IP-over-P2P (IPOP)
- 快手视频批量下载,一个脚本就够了,手把手教你批量下载快手高清视频。
- 多元统计分析最短距离法_多元统计分析方法
- 集店管家(App名称)技术服务支持
- web前端开发师前景,96道前端面试题
- 全国计算机四六级报名时间,2018年6月四六级考试报名即将截止,请抓紧时间报名!...
- 苏州外包php,【苏州IT外包经验】Ubuntu 17.10系统下配置PHP+Apache+Mysql
- 安卓市场的“安全评估报告”攻略
- 安卓马赛克view_去马赛克软件app下载
- JSP中访问本地图片