1樓:
case when中的各個條件不能有交集,否則會出現異常
該例的結果應該如下:
select id,[name],
score=case when uscore>=80 or cscore>=90 then '優'
when uscore<60 or cscore<70 then '不及格'
else '中等' end
from userinfo
再看一下case when語法如下: 各個條件表示式要互不相交
case when 條件表示式1 then 結果表示式1
when 條件表示式2 then 結果表示式2
。。。。 else 結果表示式n
end如果要用到or或者and操作,肯定是在條件表示式中有多個判斷邏輯需要操作
比如 case when a>10 or a<5 then '結果1' else '結果2' end
這樣就會區分大於10或者小於5的記錄
2樓:匿名使用者
你用括號把or前後的條件括起來試一下
sql裡如何給case when then查出來數值的列命名?
3樓:匿名使用者
1、建立測試表,
create table test_case(id varchar2(20),*** varchar2(20));
2、插入測試資料;
insert into test_case values (1,1);
insert into test_case values (2,1);
insert into test_case values (3,0);
insert into test_case values (4,1);
commit;
3、查詢表中全量資料;select t.*, rowid from test_case t;
4、編寫語句,為case when then表示式賦欄位名;
select t.*, case when *** = 1 then '男' else '女' end as ***2 from test_case t
4樓:匿名使用者
sql 可以使用 ‘as’來為檢索的列命名。
例**:base_zwb
使用 case when then 根據'bm_bh'欄位值,來生成一個列‘部門’,用 ‘as’來命名,**如下:
select zw_mc as '職位名稱',case when bm_bh = '001' then '銷售部' when bm_bh = '002' then '售後部'else '其他' end as '部門' from base_zwb;
檢索結果如下:
5樓:火焱焱焱火炎
select case checked when '1' then '是' when '0' then '否' else '否' end as '自定義列名' from dw
6樓:筱筱零
case when ...... thenwhen ...... then
else
end命名名稱即可。
7樓:匿名使用者
列名等於case,懂了吧,等於是符號,手機打不出
8樓:匿名使用者
在需要顯示出來的列後面加as 新列名!
9樓:匿名使用者
在 end 後面加上你想賦予的欄位名即可。
10樓:趙甜
在end後面直接加上列名稱
11樓:小菈蘇
job產品
開發測試
運維case when job='開發' then '搬磚的' , else '看戲的' , end role
sql server 中 關於和declare的解釋,請看
表示區域性變數,表示全域性變數 declare 定義變數,變數第一個字母是 宣告時需要指定變數的型別。declare n int 其中int是使用整數資料的精確數字資料型別,從 2 31 2,147,483,648 到 2 31 1 2,147,483,647 的整型資料。 1.sql server...
SQL Server2019中如何獲取表中某幾列的資料型別
select c.name as col name t.name as type name from sys.columns as c inner join sys.types as t on c.user type id t.user type id where c.object id objec...
sqlserver中定長charn和變長varcharn有什麼區
varchar 對每個英文 ascii 字元都佔用2個位元組,對一個漢字也只佔用兩個位元組 char 對英文 ascii 字元佔用1個位元組,對一個漢字佔用2個位元組 varchar 的型別不以空格填滿,比如varchar 100 但它的值只是 qian 則它的值就是 qian 而char 不一樣,...