當前位置:首頁 » 編程語言 » sql語句case
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql語句case

發布時間: 2022-01-12 12:59:11

資料庫sql中的case語句~

query取得iframe中元素的幾種方法
在iframe子頁面獲取父頁面元素
代碼如下:
$(

② sql 的case when 語句

把括弧去掉就好了。

下面是case的兩種用法,可以看下 :

1. 使用帶有 CASE 簡單表達式的 SELECT 語句。

在 SELECT 語句中,CASE 簡單表達式只能用於等同性檢查,而不進行其他比較。下面的示例使用 CASE 表達式更改產品系列類別的顯示,以使這些類別更易於理解。

USE AdventureWorks2008R2;

GO

SELECT ProctNumber, Category =

CASE ProctLine

WHEN 'R' THEN 'Road'

WHEN 'M' THEN 'Mountain'

WHEN 'T' THEN 'Touring'

WHEN 'S' THEN 'Other sale items'

ELSE 'Not for sale'

END,

Name

FROM Proction.Proct

ORDER BY ProctNumber;

GO

2. 使用帶有 CASE 搜索表達式的 SELECT 語句

在 SELECT 語句中,CASE 搜索表達式允許根據比較值替換結果集中的值。下面的示例根據產品的價格範圍將標價顯示為文本注釋。

USE AdventureWorks2008R2;

GO

SELECT ProctNumber, Name, 'Price Range' =

CASE

WHEN ListPrice = 0 THEN 'Mfg item - not for resale'

WHEN ListPrice < 50 THEN 'Under $50'

WHEN ListPrice >= 50 and ListPrice < 250 THEN 'Under $250'

WHEN ListPrice >= 250 and ListPrice < 1000 THEN 'Under $1000'

ELSE 'Over $1000'

END

FROM Proction.Proct

ORDER BY ProctNumber ;

GO

③ SQL語句CASE WHEN


selectsum(casewhena='退貨'then-belsebend)
from表

④ sql語句case的用法

select case when stcd='stcd' and tm between 'd1' and convert(varchar(100),year(dateadd(day,1,'d1')))
+'-'+convert(varchar(100),month(dateadd(day,1,'d1')))
+'-'+convert(varchar(100),day(dateadd(day,1,'d1')))
+' 8:00:00' then sum(drp) when stcd='stcd' and tm between convert(varchar(100),year(dateadd(day,-1,'d1')))
+'-'+convert(varchar(100),month(dateadd(day,-1,'d1')))
+'-'+convert(varchar(100),day(dateadd(day,-1,'d1')))
+' 9:00:00' and 'd1' then sum(drp) end drpsum from st_pptn_r你把'stcd'和'd1'換成具體值,試試看。

⑤ sql語句中case語句用法

不知道你具體什麼資料庫,,給出sqlserver,你上面寫的就對了,

給你寫出詳細的測試記錄吧

CREATETABLEtest(aINT,bVARCHAR(10))
INSERTINTOdbo.test
(a,b)
SELECT1,'a'
UNIONALL
SELECT2,'b'
UNIONALL
SELECTnull,'c'---這里加了一條數據,便於你看出結果

SELECTa,b,c=(CASEWHENISNULL(a,'')=''THENnullELSEbEND)--注個人喜歡用isnull()函數
FROMtest

結果:

1 a a

2 b b

NULL c null

⑥ SQL語句中case,when,then的用法

用法如下:

復制代碼

SELECT

s.s_id,

s.s_name,

s.s_sex,

CASE

WHENs.s_sex='1'THEN'男'

WHENs.s_sex='2'THEN'女'

ELSE'其他'

ENDassex,

s.s_age,

s.class_id

FROM

t_b_students

WHERE

1=1

這兩個結果是一樣的:

需要注意的一點是,Case函數只返回第一個限定值,其餘的Case將被自動忽略。

(6)sql語句case擴展閱讀:

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

簡單的例子功能:

CASEsex

WHEN『1』THEN『男』

WHEN『0』THEN『女』

ELSE『其他』END

Case搜索函數:

CASEWHENsex=『1』THEN『男』

WHENsex=『0』THEN『女』

ELSE『其他』END

顯然簡單的Case函數天生簡潔,但它們只適用於這種單欄位單值比較,而Case搜索函數具有適用於所有比較用例的優勢。

另一個需要注意的問題是,在Case函數滿足了某個條件之後,其餘的條件將被自動忽略,這樣即使滿足了多個條件,在執行過程中也只能識別第一個條件。

當使用CASEWHEN時,您可以將其視為沒有欄位名的欄位,欄位值是有條件的,並且在需要使用欄位名時可以使用as來定義別名。

⑦ sql case when語句

oracle有個函數叫decode(),用法http://blog.csdn.net/accpsz/article/details/3219395,你去看一下。這個能解決你的問題,另外你的case用的也不對,看著像漢語式的查詢,呵呵

⑧ sql語句中case when的使用問題

舉個例子就明白了,例如在員工的工資表把員工的工資分成等級
1000以下為低薪,1000-2000為中等,其他為高薪
select (case when salary <= 1000 then '低薪' when salary > 1000 and salary < 2000 then '中等' else '高薪' end ) as 工資等級 from employee
這樣,工資等級就可以當做一個列來處理,包括where裡面,可以寫where (case when salary <= 1000 then '低薪' when salary > 1000 and salary < 2000 then '中等' else '高薪' end ) = 『低薪'
當做一個列就好了

⑨ SQL查詢語句case求助!

「==」在資料庫中是沒有的,這個是java寫法。在資料庫中「=」表示相等。把「==」改成「=」即可。

⑩ SQL 語句-case

你可以把該列定義為identity類型!這樣就可以自動加1

create table tab1
(
au_id int identity(1, 1),-->這樣就可以自動加1(第一個1,是從幾開始,第二個1是標識遞增量)
au_name varchar(10)
)