怎么将以下的查询语言转换成存储过程?

mailto520 2009-02-13 05:07:02
怎么将以下的查询语言转换成存储过程?

select top @TID= [plan] from (select m.* , m.plannum - isnull((select sum(Able_Amount) from Main_Out n where n.[Able_Plan] = m.[Plan]),0) val from main_plan m where m.pact_date<= @operate_Date ) t where val <= 0
...全文
65 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
mailto520 2009-02-13
  • 打赏
  • 举报
回复
CREATE PROCEDURE sp_DeleteAllOverPlan
@Operate_Date datetime
/*

============================================================
功能: 删除指定时间段里的所有的结束的计划及相关数据
参数:
@Operate_Date datetime : 计划单填写日期

============================================================

*/
AS
Declare @TID int
select top @TID= [plan] from (select m.* , m.plannum - isnull((select sum(Able_Amount) from Main_Out n where n.[Able_Plan] = m.[Plan]),0) val from main_plan m where m.pact_date<= @operate_Date ) t where val <= 0
IF @@Rowcount < 1
SELECT @TID = ''
Else
Begin
Select * From shouliao Where [plan]=@TID
/*Delete From shouliao Where [plan]=@TID
select convert(char,@Operate_Date)+'之前的收料单删除成功,共'+convert(char,@@Rowcount)
Delete From plant_ling Where [plan]=@TID
select convert(char,@Operate_Date)+'之前的领料单删除成功,共'+convert(char,@@Rowcount)
Delete From main_product Where [plan]=@TID and txt<=0
select convert(char,@Operate_Date)+'之前的主仓库记录删除成功,共'+convert(char,@@Rowcount)
Delete From plant_return Where [plan]=@TID
select convert(char,@Operate_Date)+'之前的还料单删除成功,共'+convert(char,@@Rowcount)
Delete From plant_recede where [able_plan]=@TID
select convert(char,@Operate_Date)+'之前的退料单(退车间)删除成功,共'+convert(char,@@Rowcount)
Delete from plant_rotate where able_plan=@TID
select convert(char,@Operate_Date)+'之前的转货单删除成功,共'+convert(char,@@Rowcount)
Delete From plant_product Where [plan]=@TID and txt<=0
select convert(char,@Operate_Date)+'之前的车间记录删除成功,共'+convert(char,@@Rowcount)
Delete From Main_Out Where [Able_Plan]=@TID
select convert(char,@Operate_Date)+'之前的出库单删除成功,共'+convert(char,@@Rowcount)
Delete From Main_Fade Where [Able_Plan]=@TID
select convert(char,@Operate_Date)+'之前的退料单(退客户)删除成功,共'+convert(char,@@Rowcount)
*/
End
GO

提示:
错误170 第15行:“@TID"附近有语法错误
第15行:“t"附近有语法错误
mailto520 2009-02-13
  • 打赏
  • 举报
回复
第15行:“t"附近有语法错误
Andy__Huang 2009-02-13
  • 打赏
  • 举报
回复
create proc test @operate_Date datetime
as
set nocount on
declare @TID numeric(12)
select top @TID= [plan]
from
(select m.* , m.plannum - isnull((select sum(Able_Amount)
from Main_Out n
where n.[Able_Plan] = m.[Plan]),0) val from main_plan m where m.pact_date <= @operate_Date ) t
where val <= 0

select @TID

go
rucypli 2009-02-13
  • 打赏
  • 举报
回复
create proc sp_name
as
begin
XXX
end
love.李 2009-02-13
  • 打赏
  • 举报
回复
create procedure P_NAME
(

)
as
...看了半天没看懂. @operate_Date , @TID这两个参数什么来头.总说一下吧

34,838

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧