t-sql程式設計
--t-sql中的變數都是以@符號開頭的。
--以乙個@符號,開頭,叫做「使用者宣告的變數」
--以兩個@@開頭的叫做「全域性變數」,「系統變數」
select @@version
select @@language
--為變數賦值
--「全域性變數」(系統變數),是系統來維護的,無需我們手動干預,我們只能從中獲取值
--不能為系統變數賦值
--set @@language='文言文'
--select @@language
--變數的宣告,賦值與使用
--1.自己定義乙個變數
declare @username nvarchar(50)
--為變數賦值(一般情況,推薦使用set來為變數賦值)
set @username=n'黃林'
--另外一種為變數賦值的方式
select @username=n'許正龍';
--列印一下
print @username
--2.宣告同時初始化
declare @age int=100;
print @age;
--宣告的同時賦值,之後使用
declare @score int =80
select * from tblscore where tenglish>@score
--變數宣告之後如果沒有賦值,則結果是null,而且null與任何值的計算結果都是null
--所以說以後宣告變數在使用前記得賦值
declare @n int =100
declare @m int
select @m+@n --null與任何值計算結果都是null
--系統變數
@@error --最後乙個t-sql錯誤的錯誤號,如果沒有出錯則返回0
@@identity --最後一次插入的標識值(自動增長的編號)
@@language --當前使用的語言
@@max_connections --同事訪問的最大連線數
@@rowcount --上乙個sql語句影響的行數
@@servername --本地伺服器的名稱
@@version --當前sql server的版本號
@@transcount --當前連線開啟的事務數
select 1/0
print @@error
declare @n1 int
declare @n2 int
print @n1,@n2 --這裡直接列印會報錯,這樣的書寫格式是不正確的
print @@error --列印最後一次sql執行的結果,錯誤返回錯誤資訊編號,正確返回0
--if判斷,使用bengin... end 代替大括號
declare @age int
set @age=100
if(@age>150)
begin
print '>150'
endelse if(@age>100)
begin
print '>100'
endelse
begin
print '<=100'
end--while迴圈的用法
--計算1-100之間所有整數的和
declare @i int,@sum int
set @i=1
set @sum=0 --這裡必須賦值,不然null和任何值相加都是null
while @i<=100
begin
set @sum=@sum+@i
set @i=@i+1
endselect @sum
--通過set賦值與通過select賦值到的區別
--使用set賦值
declare @n int
set @n=(select sum(tenglish) from tblscore)
print @n
--通過select為@n賦值
declare @n int
select @n=sum(tenglish) from tblscore
print @n
--通過上面發現在聚合函式中使用set和select賦值都是可以的,並沒有區別
--但是如果不是使用在聚合函式中,如果子句查詢出來的結果是多條記錄的時候
--使用set賦值
declare @n int
set @n=(select tenglish from tblscore) --當該子查詢返回的值不只乙個的時候,這樣寫會報錯!!!
print @n
--相對來說通過set賦值更嚴謹一些
--使用select賦值
declare @n int
--當子查詢返回不只乙個值的時候,select賦值能獲取最後乙個值,而set賦值則報錯。
select @n=tenglish from tblscore order by tenglish desc
select @n
--而通過select賦值則更寬鬆一些
--但是不會報錯可能導致返回的結果會是錯誤的,所以在使用的時候要注意
SQL server中的T SQL語句
首先點選新建查詢 如下圖所示 建立資料庫 create database 資料庫名稱 使用資料庫 use 資料庫名稱 建立表 create table 表名 輸入完成執行時需選中 如果需要多條語句一起執行,則需要在後面 go 例如 create database 資料庫名稱 go use 資料庫名稱...
SQLSERVER之T SQL查詢(二)
今天我們討論乙個簡單的問題,由於是剛想到怕忘記記錄,所以乙個簡單的問題寫乙個部落格有點兒浪費。不過技術在於理解,在於知其然也要知其所以然,還是記錄一下同時也希望能幫到大家。sql查詢會有很多部落格,希望自己能耐心的寫下去,鞏固自己的知識。select s.sid,s.name from dbo.st...
SQL server中的T SQL語句
首先點選新建查詢 如下圖所示 建立資料庫 create database 資料庫名稱 使用資料庫 use 資料庫名稱 建立表 create table 表名 輸入完成執行時需選中 如果需要多條語句一起執行,則需要在後面 go 例如 create database 資料庫名稱 go use 資料庫名稱...