[英]Stored Procedure variable from table
I would like to set my variable '@Xdate' to the field 'updated' from 'dbo.Mtabel'. 我想将变量“ @Xdate”设置为从“ dbo.Mtabel”更新的字段。
ALTER PROCEDURE [dbo].[SP_Mproc]
(
@snumber nvarchar(50),
@inumber nvarchar(10),
@tdate datetime
)
AS
IF exists (Select snumber, updated FROM dbo.Mtabel Where snumber = @snumber AND inumber = @inumber)
GO
declare
@Xdate datetime,
@sdate datetime
select
@Xdate = dbo.@updated,
@Ydate = GETDATE()
SELECT @xdate = updated, @ydate=getdate() FROM dbo.Mtabel WHERE snumber = @snumber AND inumber = @inumber
ALTER PROCEDURE [dbo].[SP_Mproc]
(
@snumber nvarchar(50),
@inumber nvarchar(10),
@tdate datetime
)
AS
declare @Xdate datetime, @Ydate datetime
Select @Xdate = updated, @Ydate = getDate() FROM dbo.Mtabel Where snumber = @snumber AND inumber = @inumber
IF @@ROWCOUNT > 0
BEGIN
-- @Xdate contains 'updated', @Ydate contains current datetime
...
END
GO
This is to prevent you making several calls for the same data. 这是为了防止您多次调用相同的数据。
try this 尝试这个
CREATE TABLE #YourTable
( id varchar(50),Date1 Date, Date2 Date)
;
INSERT INTO #YourTable
(id, Date1, Date2)
VALUES
('1','2015-01-10','2015-01-20'),
('2','2015-01-20','2015-01-11'),
('3','2015-01-15','2014-01-15'),
('4','2015-02-18','2016-03-09')
;
-- select * from #YourTable
Declare @Xdate date
select @Xdate= Date2 from #YourTable where Date2 > GETDATE()
print @Xdate
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.