db2 case/if 條件控制語句
╭──╮╭──╮╭──╮╭──╮
│╭─╯│╭╮││╭─╯│╭─╯
││ │╰╯││╰─╮│╰─╮
││ │╭╮│╰─╮││╭─╯
│╰─╮││││╭─╯││╰─╮
╰──╯╰╯╰╯╰──╯╰──╯
一、case(可用於基本sql和過程中)
1、刪除表、建立表、注釋、插入資料操作。
drop table aa_week;
create table aa_week(
code smallint not null,
en_name varchar(20) not null,
abb varchar(20),
constraint p_aa_week_code primary key (code)
);comment on table aa_week is
'星期';
comment on aa_week
(code is '星期**',
en_name is '英文星期名',
abb is '英文縮寫'
);insert into aa_week values
(1,'monday','mon'),
(2,'tuesday','tues'),
(3,'wednesday','wed'),
(4,'thursday','thurs'),
(5,'friday','friday'),
(6,'saturday','sat'),
(7,'sunday','sun');
commit;
2、case查詢
兩種語法模式:
(1):case
when 條件 then 結果1
else 結果2
end(2):case 表示式1
when 表示式2 then 結果1
else 結果2
end-- 單值表示式作為條件
select
case code
when 1 then '一'
when 2 then '二'
when 3 then '三'
when 4 then '四'
when 5 then '五'
when 6 then '六'
when 7 then '七'
else 'code錯誤!'
end as cn_code,
en_name
from aa_week;
cn_code en_name
--------------------
'一' 'monday'
'二' 'tuesday'
'三' 'wednesday'
'四' 'thursday'
'五' 'friday'
'六' 'saturday'
'七' 'sunday'
'code錯誤!' 'haha'
-- 條件直接寫到when後面
select
case
when code = 1 then '一'
when code = 2 then '二'
when code = 3 then '三'
when code = 4 then '四'
when code = 5 then '五'
when code = 6 then '六'
when code = 7 then '七'
else 'code錯誤!'
end as cn_code,
en_name
from aa_week;
cn_code en_name
--------------------
'一' 'monday'
'二' 'tuesday'
'三' 'wednesday'
'四' 'thursday'
'五' 'friday'
'六' 'saturday'
'七' 'sunday'
'code錯誤!' 'haha'
╭──╮╭──╮
╰╮╭╯│╭─╯
││ │╰─╮
││ │╭─╯
╭╯╰╮││
╰──╯╰╯
二、if語句格式(僅僅限於db2過程、觸發器、函式中使用)
if (條件)
then 語句;
elseif (條件)
then 語句;
elseif (條件)
then 語句;
... ...
else
語句;end if;
例子以後用的時候再寫上。
條件控制語句
if 條件表示式 塊 塊中儲存著 組 同 個 塊中的 要麼都執 要麼都不執 塊以縮排開始,直到 恢復到之前的縮排級別時結束 塊就是 種為 分組的機制 num int input 可以將input 的返回值轉換為int型別if 條件表示式 塊else 塊 if 條件表示式 塊elif 條件表示式 塊e...
條件控制語句
2.input 函式 3.if else語句 4.if elif else語句 5.while 條件運算子可以將語句與語句連線,用於邏輯判斷。形如下 語句1if表示式else語句2 如果表示式的判斷結果為true,則會執行語句1,反之,則會執行語句2。and比or的優先順序高。通過語句m 2 or ...
條件控制語句
語法 if 條件表示式 塊 塊 塊中儲存著一組 同乙個 塊中的 要麼都執行要麼都不執行 塊以縮排開始,直到 恢復到之前的縮排級別時結束 塊就是一種為 分組的機制 value 30000 if value 30000 print 有錢任性 elif value 20000 print 有錢真好 eli...