SQL存储过程可以定义表变量吗?

比如把表做为参数,以下为错误方法,如果可以的话正确的如何写?ALTERPROCEDUREdbo.StoredProcedure1@1tableASselect*from@... 比如把表做为参数,以下为错误方法,如果可以的话正确的如何写?ALTER PROCEDURE dbo.StoredProcedure1
@1 tableAS
select * from @1
展开
 我来答
匿名用户
2013-06-28
展开全部
这样不行吧。
可以这样间接部分实现这种功能:
ALTER PROCEDURE dbo.StoredProcedure1
@tpye int
AS
if @tpye =1
select * from table1
else if @tpye =2
select * from table1
……
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
匿名用户
2013-06-28
展开全部
以下是我做过的有临时表参与的存储过程,参考下吧,应该不难的,具体不明再问
---创建存储过程

USE BANK
GO

---SELECT * FROM DEALING
CREATE PROCEDURE PROC_DEALING
AS
---建立DEALING_BUY临时表
DECLARE @DEALING_BUY TABLE
(
ACCOUNT_CODE VARCHAR(32),
FUND_CODE VARCHAR(32),
STATUS VARCHAR(1),
AMOUNT INT,
TOTAL FLOAT
)
INSERT INTO @DEALING_BUY(ACCOUNT_CODE,FUND_CODE,STATUS,AMOUNT,TOTAL)
SELECT DEALING.ACCOUNT_CODE,DEALING.FUND_CODE,DEALING.STATUS,SUM(DEALING.AMOUNT),SUM(AMOUNT*VALUE)
FROM DEALING WHERE STATUS='B'
GROUP BY DEALING.ACCOUNT_CODE,DEALING.FUND_CODE,DEALING.STATUS

----SELECT * FROM @DEALING_BUY

---建立DEALING_BUY临时表
DECLARE @DEALING_SELL TABLE
(
ACCOUNT_CODE VARCHAR(32),
FUND_CODE VARCHAR(32),
STATUS VARCHAR(1),
AMOUNT INT,
TOTAL FLOAT
)
INSERT INTO @DEALING_SELL(ACCOUNT_CODE,FUND_CODE,STATUS,AMOUNT,TOTAL)
SELECT DEALING.ACCOUNT_CODE,DEALING.FUND_CODE,DEALING.STATUS,SUM(DEALING.AMOUNT),SUM(AMOUNT*VALUE)
FROM DEALING WHERE STATUS='S'
GROUP BY DEALING.ACCOUNT_CODE,DEALING.FUND_CODE,DEALING.STATUS

---SELECT * FROM @DEALING_SELL

SELECT T1.ACCOUNT_CODE,T1.FUND_CODE,IsNull(T1.AMOUNT-T2.AMOUNT,T1.AMOUNT) AS AMOUNT,T1.TOTAL/T1.AMOUNT AS VALUE
---FROM @DEALING_BUY T1,@DEALING_SELL T2
FROM @DEALING_BUY T1 LEFT JOIN @DEALING_SELL T2 ON T1.FUND_CODE=T2.FUND_CODE
GO
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-06-28
展开全部
表怎么定参数,可以用临时表 #tempTable
定义变量也得加个declare
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-06-28
展开全部
定义变量的方法:
declare @参数名 类型
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式