當前位置:首頁 » 編程語言 » sql的caseselect

sql的caseselect

發布時間: 2022-07-20 06:13:34

sql語句用法: select case語句塊後面能否加where 條件

when。。。。。。。。。then。。。。。。。
when就相當於where
create
table
table_3(a
varchar
,b
varchar)
insert
into
table_3
values('1','2')
insert
into
table_3
values('1','3')
insert
into
table_3
values('2','2')
select
*
from
table_3
---when語句中的類型和else必須一致
select
(case
a
when
'1'
then'123'
when
'2'
then
'456'
else
0
end
)
as
aa
,a,b
from
table_3
select
case
when
a=1
then
'中文'
when
a=2
then
'英文'
else
'過問'
end
from
table_3

Ⅱ sql語句case查詢問題

select
case
when
費用交款日期
is
null
or
費用交款日期=''
then
0
else
isnull(稅務費,0)
as
稅務費
from
table

Ⅲ SQL查詢語句SELECT中帶有case when嵌套子查詢判斷的問題

1、創建兩張測試表

create table test_case1(id number, value varchar2(200));

create table test_case2(id number, value varchar2(200));

Ⅳ sql 2000中 select case when then 的用法

CASE WHEN condition THEN result

[WHEN ...]

[ELSE result]
END

CASE
子句可以用於任何錶達式可以有效存在的地方。 condition 是一個返回boolean 的表達式。 如果結果為真,那麼
CASE
表達式的結果就是符合條件的 result。 如果結果為假,那麼以相同方式搜尋任何隨後的 WHEN 子句。
如果沒有 WHEN
condition 為真,那麼 case 表達式的結果就是在
ELSE 子句里的值。
如果省略了 ELSE
子句而且沒有匹配的條件, 結果為 NULL。

例子:

SELECT * FROM test;

a
---

1

2

3

SELECT a,

CASE WHEN a=1 THEN 'one'

WHEN a=2 THEN 'two'

ELSE 'other'

END

FROM test;

a | case
---+-------

1 | one

2 | two

3 | other

所有 result 表達式的數據的類型都必須可以轉換成單一的輸出類型。

下面這個"簡單的" CASE
表達式是上面的通用形式的一個特殊的變種。

CASE expression

WHEN value THEN result

[WHEN ...]

[ELSE result]
END

先計算 expression 的值, 然後與所有在WHEN
子句里聲明的 value 對比,直到找到一個相等的。 如果沒有找到匹配的,則返回在
ELSE 子句里的
result (或者 NULL)。 這個類似於 C 里的
switch
語句。

上面的例子可以用簡單 CASE
語法來寫:

SELECT a,

CASE a WHEN 1 THEN 'one'

WHEN 2 THEN 'two'

ELSE 'other'

END

FROM test;

a | case
---+-------

1 | one

2 | two

3 | other

CASE
表達式並不計算任何對於判斷結果並不需要的子表達式。 比如,下面是一個可以避免被零除的方法:

SELECT ... WHERE CASE WHEN x <> 0 THEN y/x > 1.5 ELSE false END;

Ⅳ SQL的SELECT語句,裡面可以嵌套CASE么

可以的,而且使用頻率還比較高。
例:欄位:性別 以1和2,分別代表男和女
xb
1
2
1
那麼檢索的時候可以寫:
select case when xb = '1' then『男』when '2' then '女' else '' end

Ⅵ SQL的SELECT語句,裡面可以嵌套CASE么

答案

sql裡面沒有case語句!會有語法錯誤報錯!
匿名
這位老兄。不懂資料庫就不要亂發言了,,是在害人吧。。

可以有case。
在資料庫中case是多分支語句。可以嵌套在查詢語句中,就像JAVA和C#中的case的意義基本相同。
給你舉個例子。。case是個語句組。要和end 配合使用的。相當於JAVA和C#中的case...break。

select stuNo 成績=case
when writtenExam<60 then 'E'
when writtenExam between 60 and 69 then 'D'
when writtenExam between 70 and 79 then 'C'
when writtenExam between 80 and 89 then 'B'
else 'A'
end
from stuMarks

這段代碼的意思就是查詢學生成績表中筆試成績。當成績小於60分 打分為E
當成績在60~69之間 打分為D
類推、

Ⅶ sql語句中的的select case 問題

SELECT sum(case when age >20 and age <30 then 1 else 0 end) as [20-30歲的人數] FROM Student

---
以上,希望對你有所幫助。

Ⅷ SQL語句中Case 的用法

Select Case 語句在有多個可能的條件必須被檢查時使用。與 If 語句不同,Select Case語句在找到匹配的Case 表達式並執行了Case 表達式和下一個Case 表達式之間的語句後將立即跳出。如果沒有匹配的Case 表達式,將執行其它語句。

Case Else 與lse 的意義相同。

Case 語句能接受各種類型的(作為判斷條件的)表達式。表達式可以是單一值、由逗號分隔的一組值、能返回值的函數、用"To"關鍵字指定的值的范圍或者使用"Is"關鍵字對等式或不等式進行測試。您可以連接不同類型的不同表達式,只要將它們用逗號分開即可。

Ⅸ PLSQL中,select case..when.. then..什麼意思怎麼用

case when ... then .. when .. then ... end

這種表達式,是sql的不同條件分支結果。

舉例如下,

1、創建數據表,create table test_student(stu_id number, class_id number);

Ⅹ SQL中case when與select嵌套問題

SELECT
(Casewhengirl='a'thenA.oper_name_1elseB.oper_name_1)ASoper_name_1,
(Casewhengirl='a'thenA.oper_name_2elseB.oper_name_2)ASoper_name_2,
FROMA
--你試試,應該是可以的

熱點內容
iisftp被動模式 發布:2025-02-01 04:41:50 瀏覽:350
車載安卓怎麼安裝軟體 發布:2025-02-01 04:30:50 瀏覽:469
安卓系統su程序是什麼 發布:2025-02-01 04:25:42 瀏覽:475
android代碼行數統計 發布:2025-02-01 04:20:47 瀏覽:216
快速喊話腳本 發布:2025-02-01 04:16:48 瀏覽:885
如何分辨普拉多的配置 發布:2025-02-01 04:11:45 瀏覽:681
linuxc文件刪除 發布:2025-02-01 04:11:33 瀏覽:218
c語言稀疏矩陣轉置矩陣 發布:2025-02-01 03:47:57 瀏覽:531
坦克世界掛機腳本有哪些 發布:2025-02-01 03:07:41 瀏覽:134
串口編程at 發布:2025-02-01 03:06:05 瀏覽:909