SQL (一)定義變量以及變量賦值


 1.定義變量:declare @name varchar(20)  declare定義一個名字為name的字符串類型的變量,變量前面需要加@

2.為變量賦值:set @name = '%奧迪%' ,用set來進行賦值操作(也可以用select)這里的值可以是一個值也可以是從數據庫中查詢出的值或表達式

3.編程:declare @name varchar(20)

set @name = '%奧迪%'

select * from car where name like @name

這三條語句就可以從car表中選出名字中含奧迪的車

 

 

定義一個名字為avg的變量,查詢出所有車的價格平均值賦給avg,輸出的時候字符串和小數類型不能一起打印,所以要用cast來轉換為字符串類型的

declare @avg float
select @avg = avg(price) from car
print '所有汽車的平均價格是:'+cast(@avg as varchar(20))

 

if語句,if語句后面要跟beginend,相當於cshap里面的大括號

declare @find varchar(20)
set @find='寶馬'
if(@find='寶馬')
begin
 print '寶馬汽車'
 select * from Car where name like '%'+@find+'%' 
end
else 
begin
 print '其它汽車'
 select * from Car
end

 

定義購買數量,和需要購買的水果名字,將庫存放到變量kc里面,判斷如果購買數量小於庫存就可以購買

並且將數據庫內的numbers減去購買掉的數量,並且顯示出來

else如果購買數量大於庫存就顯示庫存不足

declare @buycount int,@fruitname varchar(20)
set @buycount = 80
set @fruitname = '菠蘿'

declare @kc int
select @kc = numbers from fruit where name=@fruitname
if @buycount < @kc
begin
print '可以購買'
update fruit set numbers = numbers-@buycount where name=@fruitname
select * from fruit where name=@fruitname
end
else
begin
print '庫存不足'
end

在數據庫的編程中while循環一般用不到,因為數據庫對數據的操作是以集合形式的操作,不需要循環來做,在if語句后面的程序體一定記得加beginend

如果涉及到修改數據庫中內容的時候,最好是在程序前面加begin tran后面加rollback,如果出現程序錯誤以便進行回滾操作

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM