SQL檔案中怎麼宣告變數,SQLSERVER中變數宣告的命令是什麼

2021-03-04 01:51:21 字數 4215 閱讀 2918

1樓:匿名使用者

在 sql server 用 declare 宣告變數

declare @x int -- 宣告乙個int型別變數

set @x = 100 -- 賦值

sql server中變數宣告的命令是什麼

2樓:匿名使用者

declare @變數名 型別

比如給你寫個例子,declare的那些都是生明變數,set是給變數賦值

declare @a int

declare @b int

declare @c int

declare @d int

declare @str int

set @str=0

while @str<=9999

begin

set @a=cast(substring(right('0000'+cast(cast(@str as varchar) as varchar),4),1,1) as int)

set @b=cast(substring(right('0000'+cast(cast(@str as varchar) as varchar),4),2,1) as int)

set @c=cast(substring(right('0000'+cast(cast(@str as varchar) as varchar),4),3,1) as int)

set @d=cast(substring(right('0000'+cast(cast(@str as varchar) as varchar),4),4,1) as int)

if (@a*7+@b*9+@c*10+@d*5+222)%11=3

begin

print ('a='+cast(@a as varchar)+' b='+cast(@b as varchar)+' c='+cast(@c as varchar)+' d='+cast(@d as varchar))

endset @str=@str+1end

3樓:匿名使用者

declare 變數名 變數型別[,變數名 變數型別]如:declare @id int,@mc varchar(20)宣告 @id 為整形;,@mc為字元(20位)。

乙個 declare 可宣告乙個或多個變數變數名前一定要加「@」符號。

sql 查詢語句如何定義變數

4樓:今年以後_濤

假設三個表 a,b,c,通過a中查出來的乙個記錄來覺得下面去查b還是c表:

declare

varchar temp(10)

select @temp=x from db:a where ...

if(@temp==0)

select * from db:b where...

else if(@temp==1)

select * from db:c where...

這個思路應該是這樣的,你自己把**補充完整,資料型別定好,希望能幫到你

5樓:地表最帥

as在sql中是別名的用法,它可以為表名取別名,也可以為列名取別名,其作用主要是為了增加可讀性。

示例:為列取別名的兩種寫法

1、欄位名 as 別名 注:as 也可以省略select id as 編號,name as 姓名 from table1

這句也可以寫成:

select id 編號,name 姓名 from table12、用等號來使用別名

select 編號=id,姓名=name from table1其效果和前兩個語句一樣

示例2:為表名取別名的用法

select a.id 編號,name 姓名 from table1 as a join table2 as b on a.id=b.id

其中as 也可以省略。

6樓:匿名使用者

set @date1 = dateadd(month,datediff(month,0,@date1)+1,0)

set @date2 = dateadd(month,datediff(month,0,@date2)+2,0)-1

也就是前面用set關鍵字,表示賦值。

7樓:匿名使用者

我也 不是很清楚,但你要賦值肯定要有set 啊不過在select 內 用set 不知道可不可以 set @date1 = dateadd(month,datediff(month,0,@date1)+1,0)

你加個set 看下

8樓:匿名使用者

sql實現不了吧,要儲存過程

9樓:匿名使用者

declare @sql nvarchar(1000),result nvarchar(2);

select result ='1';

select @sql = 'select * from abc_'+@result+'_def';

exec_sp_executesql(@sql );//exec(@sql)

sql怎麼宣告變數?

10樓:tongkai瓜

宣告區域性變數語法:declare @variable_name datatype其中 variable_name為區域性變數的名稱,datatype為資料型別。

給區域性變數賦值有兩種方法:

1、set @variable_name=value2、select @variable_name=value兩者的區別:set賦值語句一般用於賦給變數乙個指定的常量,select賦值語句一般用於從表中查詢出資料然後賦給變數。

例如:declare @count intset @count=123

print @count

全域性變數:由於全域性變數是系統定義的,我們這裡只做舉例。

@@error 最後乙個t-sql錯誤的錯誤號@@identity 最後一次插入的標識值@@language 當前使用的語言名稱

@@max_connections 可以建立的同時連線的最大數目@@servername 本地伺服器的名稱@@version sql server的版本資訊

t―sql中宣告變數的語句是什麼

11樓:碧海風雪

--宣告普通變數

declare @a int=1

--宣告表變數

declare @t table (a int,b nvarchar(25))

sqlserver中宣告變數並使用

12樓:【深※藍

你的問題出在對來變數源的賦值上了,應該用:select @a=@@identity,

以下是我按你的要求做的例子,sqlserver 2008中測試正確:

create table login

(sid int identity primary key,name varchar(40) ,

password varchar(40),alevel varchar(40))

gocreate table uninfo(uid int)

godeclare @a int

insert into login (name,password,alevel)

values (7,7,4)

select * from login

select @a=@@identity

insert into uninfo (uid) values (@a)

select * from uninfo

godrop table login

godrop table uninfogo

13樓:匿名使用者

insert into [table2](uninfo) values(insert into [table1] values(7,7,4)select @@duidentity)

你試試行不行,zhi我對@@identity引數也

dao不是很了內解。容。希望能幫到你。。

sql中 宣告變數的時候為什麼要加@

14樓:匿名使用者

oracle的和sqlserver的完全不同

所以這個不適合你所用的oracle

sql怎麼宣告變數,sql 如何宣告變數

宣告區域性變數語法 declare variable name datatype其中 variable name為區域性變數的名稱,datatype為資料型別。給區域性變數賦值有兩種方法 1 set variable name value2 select variable name value兩者的...

SQL中遞迴查詢,sql 怎麼遞迴查詢的方法

with tt select 語句1 初始化union all select 語句2 select from tt 在select 語句2中from的表裡關聯with後面的表名tt就形成遞推了。給樓主例子 化解32層遞迴限制 sql 怎麼遞迴查詢的方法 1 建立測試表,createtabletest...

vb中怎麼宣告sqlsever變數

vb 中怎麼宣告sql資料庫變數 資料庫連線採用的是sql語言,sql語言在連線資料庫時不需回要設答置變數,只需要宣告二個物件。在連線資料庫前必須宣告二個物件,它們是資料庫連線物件和記錄集物件。在一般連線資料庫時,首先必須在引用中新增資料庫連線的引用 microsoft dao object lib...