導航:首頁 > 編程大全 > 資料庫case

資料庫case

發布時間:2023-01-02 01:39:34

⑴ oracle資料庫case問題

case when...then...else...end是sql查詢的過濾條件,在做統計的時候常常使用。


  1. 表order(id, status)

  2. select count(*) 訂單數,sum(case when a.status='1' then 1 else 0 end) 待付款,sum(case when a.status='2' then 1 else 0 end) 待發貨,sum(case when a.status='3' then 1 else 0 end) 待收貨,sum(case when a.status='4' then 1 else 0 end) 已完成,sum(case when a.status='5' then 1 else 0 end) 已取消 fromorder


Oracle Database,又名Oracle RDBMS,或簡稱Oracle。是甲骨文公司的一款關系資料庫管理系統。它是在資料庫領域一直處於領先地位的產品。可以說Oracle資料庫系統是目前世界上流行的關系資料庫管理系統,系統可移植性好、使用方便、功能強,適用於各類大、中、小、微機環境。它是一種高效率、可靠性好的 適應高吞吐量的資料庫解決方案。

⑵ c# ACCESS資料庫case語句查詢問題

Access
中改為:
Dim
strSQL
As
String
strSQL
="Select
iif(content
LIKE
'*-RA*'
,
'小雨'
,iif(content
LIKE
'*RA*',
'大雨'
,'其他'))
AS
天氣
FROM
Sheet1"

⑶ 為什麼mysql中的case總是為空

ifnull()

你的第二個參數設置有誤.

你可以這樣試試:

MySQL ifnull()函數和nvl()函數類似,但是也有所不同,下面就為您詳細介紹MySQLifnull()函數 ,希望可以讓您對MySQL ifnull()函數有更深的認識.

IFNULL(expr1,expr2)

如果expr1不是NULL,IFNULL()返回expr1,否則它返回expr2.IFNULL()返回一個數字或字元串值,取決於它被使用的上下文環境.

mysql> select IFNULL(1,0);

-> 1

mysql> select IFNULL(0,10);

-> 0

mysql> select IFNULL(1/0,10);

-> 10

mysql> select IFNULL(1/0,'yes');

-> 'yes'

IF(expr1,expr2,expr3)

如果expr1是TRUE(expr1<>0且expr1<>NULL),那麼IF()返回expr2,否則它返回expr3.IF()返回一個數字或字元串值,取決於它被使用的上下文.

mysql> select IF(1>2,2,3);

-> 3

mysql> select IF(1<2,'yes','no');

-> 'yes'

mysql> select IF(strcmp('test','test1'),'yes','no');

-> 'no'

expr1作為整數值被計算,它意味著如果你正在測試浮點或字元串值,你應該使用一個比較操作來做.

mysql> select IF(0.1,1,0);

-> 0

mysql> select IF(0.1<>0,1,0);

-> 1

在上面的第一種情況中,IF(0.1)返回0,因為0.1被變換到整數值, 導致測試IF(0).這可能不是你期望的.在第二種情況中,比較測試原來的浮點值看它是否是非零,比較的結果被用作一個整數.

CASE value WHEN [compare-value] THEN result [WHEN [compare-value] THEN result ...] [ELSE result] END

CASE WHEN [condition] THEN result [WHEN [condition] THEN result ...] [ELSE result] END

第一個版本返回result,其中value=compare-value.第二個版本中如果第一個條件為真,返回result.如果沒有匹配的result值,那麼結果在ELSE後的result被返回.如果沒有ELSE部分,那麼NULL被返回.

mysql> SELECT CASE 1 WHEN 1 THEN "one" WHEN 2 THEN "two" ELSE "more" END;

-> "one"

mysql> SELECT CASE WHEN 1>0 THEN "true" ELSE "false" END;

-> "true"

mysql> SELECT CASE BINARY "B" when "a" then 1 when "b" then 2 END;

-> NULL

⑷ 資料庫sql中的case語句~

  1. SQL語句中的CASE語句與高級語言中的switch語句,是標准SQL的語法,適用與一個條件判斷有多種值的情況下分別執行不同的操作

  2. 靈活應用CASE語句可以使SQL語句變得簡潔易讀.

  3. Case 使用方法:

  4. Case具有兩種格式。簡單Case函數

  5. 和Case搜索函數。 --簡單Case

  6. 函數
    CASE sex
    WHEN '1' THEN '男'
    WHEN '2' THEN '女'
    ELSE '其他' END
    --Case搜索函數
    CASE WHEN sex = '1' THEN '男'
    WHEN sex = '2' THEN '女'
    ELSE '其他' END
    這兩種方式,可以實現相同的功能。簡單Case函數的寫法相對比較簡潔,但是和Case搜索函數相比,功能方面會有些限制,比如寫判斷式。
    還有一個需要注意的問題,Case函數只返回第一個符合條件的值,剩下的Case部分將會被自動忽略。
    --比如說,下面這段SQL,你永遠無法得到「第二類」這個結果
    CASE WHEN col_1 IN ( 'a', 'b') THEN '第一類'
    WHEN col_1 IN ('a') THEN '第二類'
    ELSE'其他' END

⑸ 資料庫中case語句和if語句的區別

SELECT
'Price
Category'
=
CASE
WHEN
price
IS
NULL
THEN
'Not
yet
priced'
WHEN
price
<
10
THEN
'Very
Reasonable
Title'
WHEN
price
>=
10
and
price
<
20
THEN
'Coffee
Table
Title'
ELSE
'Expensive
book!'
END
先說下,case要和end一塊用。
從上面可以看出,case里用的是when
then
形式,從整個case
end來看,它是從自己的多個語句中擇一輸出結果。
如果是把when
看成if
,就好理解多了,if語句就像是篩子里的石子,而case
end就是篩子,只會允許一個符合它網眼大小的石頭出去,並且會將這個石子打包成一個可用的表達式。

⑹ 資料庫的case是什麼意思..概念是什麼.

用例,就是相當於一個例子

⑺ SQL中case,when,then,else的用法是什麼

用法:

1、第一種寫法:

復制代碼

SELECT

s.s_id,

s.s_name,

s.s_sex,

CASE

WHEN s.s_sex = '1' THEN '男'

WHEN s.s_sex = '2' THEN '女'

ELSE '其他'

END as sex,

s.s_age,

s.class_id

FROM

t_b_student s

WHERE

1 = 1

2、第二種寫法

SELECT

s.s_id,

s.s_name,

s.s_sex,

CASE s.s_sex

WHEN '1' THEN '男'

WHEN '2' THEN '女'

ELSE '其他'

END as sex,

s.s_age,

s.class_id

FROM

t_b_student s

WHERE

1 = 1

兩個運行結果一樣:

有一個需要注意的問題,Case函數只返回第一個符合條件的值,剩下的Case部分將會被自動忽略。

(7)資料庫case擴展閱讀:

Case具有兩種格式:簡單Case函數和Case搜索函數。

簡單Case函數:

CASE sex

WHEN『1』THEN『男』

WHEN『0』THEN『女』

ELSE『其他』END

Case搜索函數:

CASE WHEN sex=『1』THEN『男』

WHEN sex=『0』THEN『女』

ELSE『其他』END

顯然,簡單Case函數生在簡潔,但是它只適用於這種單欄位的單值比較,而Case搜索函數的優點在於適用於所有比較的情況。

還有一個需要注意的問題,Case函數在滿足了某個符合條件後,剩下的條件將會被自動忽略,因此,即使滿足多個條件,執行過程中也只認第一個條件。

在使用CASE WHEN時,可以把它當作一個沒有欄位名的欄位,欄位值根據條件確認,在需要使用欄位名時可以是用as來定義別名。

⑻ 資料庫case語句

select 成績, case 成績 when 成績<60 then 成績+10 else 成績 end as 加分後成績
from 表名

⑼ sql 資料庫 case 用法~~~

select name,N=(
case when balance=null then '不清'
when balance<1000 then '較少'
when balance>=100 then '其他'
end)
from account

閱讀全文

與資料庫case相關的資料

熱點內容
網路機頂盒電視沒信號怎麼回事 瀏覽:384
蘋果手機如何下載來玩 瀏覽:826
win10安裝重新啟動 瀏覽:395
復制文件和文件夾出錯 瀏覽:652
加工中心編程如何學 瀏覽:16
電腦掃碼支付密碼嗎 瀏覽:815
網路微信平台 瀏覽:165
applepay未添加此卡 瀏覽:201
哪個網站可以試玩cq9游戲 瀏覽:367
怎麼查電信光纖賬號和密碼是什麼樣的 瀏覽:830
iphone如何發錄音文件 瀏覽:982
windowsxp桌面小工具 瀏覽:154
運動類app開發設計 瀏覽:401
psico圖標文件生成 瀏覽:706
將所有文件名導入資料庫 瀏覽:856
查看linux伺服器使用情況 瀏覽:177
日版iphone5蜂窩數據 瀏覽:336
淄博淄博兼職女微信群 瀏覽:374
px轉sp在線工具 瀏覽:538
addhandlerjs 瀏覽:440

友情鏈接