1樓:網友
可以寫儲存過程或者觸發器。那裡有控制語句。和c的差不多。因為sql是高度嫌缺逗非過程化的 語言,不可能有if的,只能用儲存過程處理了。
create procedure order_tot_amt
o_id int,p_tot int output
as select @p_tot = sum(unitprice*quantity)
from orderdetails
where ordered=@o_id
go 例項 設有兩個表為product,order_,其表內容如下: product
產品編號 產品名稱 客戶訂數。
001 鋼筆 30
002 毛筆 50
003 鉛筆 100
order_
產品編號 客戶名 客戶訂金。
001 南山區 $30
002 羅湖區 $50
003 寶安區 $4
請實現按編號為連線條件,將兩個表連線成乙個臨時表,該表只含編號。產品名。客戶名。訂金。總金額, 總金額=訂金*訂數,臨時表放在儲存過程中 **如下:
create proc temp_sale
as select a.產品編號,a.產品名扮陵稱,b.客戶名,b.客戶訂金,a.客戶訂數* b.客戶訂金 as總芹賣金額。
into #temptable from product a inner join order_ b on a.產品編號=b.產品編號---此處要用別名。
if @@error=0
print 'good'
else print 'fail'go
2樓:崖邊野薑
sql包括了所有對資料庫的操作,主要是由4個部分組成: 1.資料定義:
這一部分又稱為「sql ddl」,定義資料庫的邏輯結構,包括定義資料庫、基本表、檢視和索引4部分。 2.數。
sql語句中能否含有if....else...判斷語句?
3樓:網友
sql中沒有ifif...else...判斷語句,但有case…語句,而且是所有資料庫都支援的。
程式中用法如下:
2、注意:nvl()是oracle資料庫中對欄位的非空校驗,如果欄位名為空,則賦值為逗號後面的值。
3、mysql中還有一種if...else的方法if(表示式, 表示式成立的值, 表示式不成立的值)
ifnull("欄位名", 值) -非空驗證。
4樓:仍語
首先sql語句中不能含有if...else...判斷語句!
if else語句只有在儲存過程中使用,在sql是不支援的,不過我們有可以替代的方法,使用case when語句解決,各種資料庫都支援。
語法:case when col1>1 then col2 when col1<=1 then col3 else '出現錯誤'
車到山前必有路,問題肯定是可以中找到方法解決的,不要著急。
5樓:網友
sql中沒有if...else...語句,但有case when語句,能達到你想要的效果。
select case when col1>1 then col2 else col3 end from 表名;
sqlserver中用t-sql命令查詢乙個資料庫中有哪些表的sql語句
6樓:萢萢
參考:1、查詢sql中的所有表:
select table_name from 資料庫名稱。information_ where table_type='base table' 執行之後,就可以看到資料庫中所有屬於自己建的表的名稱。
2、查詢sql中所有表及列:
select as table_name, as column_name from inner join on = where ( = 'u') and (not ( like 'dtproperties'))
3、在sql查詢分析器,還有乙個簡單的查詢方法:
exec sp_msforeachtable @command1="sp_spaceused '?'" 執行完之後,就可以看到資料庫中所有使用者表的資訊。
4、查詢總儲存過程數:
select count(*)總儲存過程數 from sysobjects where xtype='p'
d = 預設值或 default 約束。
f = foreign key 約束。
l = 日誌。
fn = 標量函式。
if = 內嵌表函式。
p = 儲存過程。
pk = primary key 約束(型別是 k)
rf = 複製篩選儲存過程。
s = 系統表。
tf = 表函式。
tr = 觸發器。
u = 使用者表。
uq = unique 約束(型別是 k)
v = 檢視。
x = 擴充套件儲存過程。
sql 語句適用於所有資料庫嗎?包括大型的資料庫。。
7樓:匿名使用者
對的,sql語句有自己的標準,所有資料庫廠商都有實現,不過都加入了自己資料庫的特性。
8樓:開源類庫
大部分語法是通用的,但是有些關鍵字,可能有細微的差別。
9樓:吳巨集偉
是的,只是對不同的資料庫可能對個別函式的支援不同。
10樓:三條腿的蜜蜂
有細微的差別,sql是一套獨立的標準。
資料庫SQL語句
create function dbo isin string1 varchar 100 string2 varchar 4000 returns bitas begin if charindex string1 string2 0 begin return 1 endreturn 0 end呼叫 ...
SQL資料庫有什麼優點,相比SQL資料庫,圖資料庫有何優勢?
sql server的優點眾多,讓其在資料庫領域獨佔鰲頭,成為最受使用者歡迎的資料庫系統,下面就讓我們來了解sql server的優點和缺點。sql server是一個關聯式資料庫管理系統,它最初是由microsoft,sybase和ashton tate三家公司共同開發的於1988 年推出了第一個...
database資料庫中sql語句新增資料時能否實現先查
sql server可以用if exists來判斷 儲存過程 if exists select 1 from sysobjects where name 儲存過程名 drop procedure 儲存過程名 go資料庫表 if exists select 1 from sysobjects wher...