sql變數賦值語句
『壹』 用sql語句編寫:定義兩個變數並賦值,要求輸出較小的那個值。
set @a=1,@b=2;
select @a,@b,(case
when @a<@b then @a
when @b<@a then @b
when @b=@a then '=='
end);
『貳』 如何用動態SQL語句給變數賦值
在一個問題中遇到的一段精典動態SQL代碼:declare @fdate datetime
declare @sql0 nvarchar(4000)
declare @ban varchar(4),@num varchar(4),@cur_id intset @cur_id=2497
set @sql0=' SELECT @ban=b'+
case when substring(convert(char(10),@fdate,120),9,1)=0 then substring(convert(char(10),@fdate,120),10,1)
else substring(convert(char(10),@fdate,120),9,2)
end+' FROM kq_paiban'+
' where empid='''+rtrim(convert(char,@cur_id))+''' and
sessionid=(select id from s_session where convert(varchar(7),date0,120)='''+substring(convert(char(10),@fdate,120),1,7)+''')'
select (@sql0)--顯示動態構造的SQL語句
--在構造動態SQL語句字元串時,對其中動態部分(比如這里的列名B1,B2[Bi]後面變化的部分i)要先運算出來,還有其中的常量部分,最後將字元串連接成完整語句.exec sp_executesql @sql0,N'@ban varchar(4) output',@num output
--這里沒有使用EXEC()函數,因為該存儲過程支持嵌入參數.
『叄』 Sql server 存儲過程中怎麼將變數賦值
/*
Sql server 存儲過程中怎麼將變數賦值
*/
--SQL賦值語句
DECLARE @test1 INT
SELECT @test1 = 111
SET @test1 = 222
--SQL函數賦值,假定count()是自定義函數
DECLARE @test2 INT
SELECT @test2 = COUNT(*) FROM sys.sysobjects
--SQL存儲過程賦值,直接傳參處理(類似C語言中的指針嗎)
IF OBJECT_ID('sp_test') IS NOT NULL DROP PROCEDURE sp_test
GO
CREATE PROCEDURE sp_test(@test INT OUTPUT)
AS
BEGIN
SELECT @test = 999
END
GO
DECLARE @test3 INT
EXEC sp_test @test3 OUTPUT
SELECT @test3
DROP PROCEDURE sp_test
GO
『肆』 Sql server 存儲過程中怎麼將變數賦值
/*
Sql server 存儲過程中怎麼將變數賦值
*/
--SQL賦值語句
DECLARE @test1 INT
SELECT @test1 = 111
SET @test1 = 222
--SQL函數賦值,假定count()是自定義函數
DECLARE @test2 INT
SELECT @test2 = COUNT(*) FROM sys.sysobjects
--SQL存儲過程賦值,直接傳參處理(類似C語言中的指針嗎)
IF OBJECT_ID('sp_test') IS NOT NULL DROP PROCEDURE sp_test
GO
CREATE PROCEDURE sp_test(@test INT OUTPUT)
AS
BEGIN
SELECT @test = 999
END
GO
DECLARE @test3 INT
EXEC sp_test @test3 OUTPUT
SELECT @test3
DROP PROCEDURE sp_test
GO
『伍』 Sql中如何給變數賦值
declare
@n1
int,@n2
varchar(10)
set
@n1
=(select
age
from
table
where
column=xxx)
set
@n2=(select
gender
from
table
where
column
=
xxx
)
------------------
或者一起賦值
就是樓上那個
declare
@n1
int,@n2
varchar(10)
select
@n1
=age,@n2=gender
from
table
where
column
=
xxx
------------------
select
@n1,@n2
就知道變數的值了
『陸』 Sql中如何給變數賦值
DECLARE @n1 int,@n2 varchar(10)
set @n1 =(select age from table where column=xxx)
set @n2=(select gender from table where column = xxx )
------------------
或者一起賦值
就是樓上那個
DECLARE @n1 int,@n2 varchar(10)
select @n1 =age,@n2=gender
from table where column = xxx
------------------
select @n1,@n2 就知道變數的值了
『柒』 Sql中如何給變數賦值
/*
Sql server 存儲過程中怎麼將變數賦值
*/
--SQL賦值語句
DECLARE @test1 INT
SELECT @test1 = 111
SET @test1 = 222
--SQL函數賦值,假定count()是自定義函數
DECLARE @test2 INT
SELECT @test2 = COUNT(*) FROM sys.sysobjects
--SQL存儲過程賦值,直接傳參處理(類似C語言中的指針嗎)
IF OBJECT_ID('sp_test') IS NOT NULL DROP PROCEDURE sp_test
GO
CREATE PROCEDURE sp_test(@test INT OUTPUT)
AS
BEGIN
SELECT @test = 999
GO
DECLARE @test3 INT
EXEC sp_test @test3 OUTPUT
SELECT @test3
DROP PROCEDURE sp_test
GO