1. 程式人生 > >Oracle Case When巢狀判斷結果集SQL

Oracle Case When巢狀判斷結果集SQL

資料需求:
此SQL是判斷UPS狀態使用
1、一個機房有兩個UPS
2、當其中一個UPS出現問題時,此時機房的UPS告警狀態為0,否則為1
3、UPS狀態0異常,1正常

4、請編寫一個機房為例子  UPS編碼為:99S8E141  99S7E144

相關SQL:

with tb as
(
select (case when columnvalue5='1' then 1 end)||(case when columnvalue5='0' then 0 end) as ups_status
from z_ups
where columnvalue1 in ('99S7E146','99S7E64')
)
select (case when sum(ups_status)='1' then '0' end)||(case when sum(ups_status)='2' then '1' end)||(case when sum(ups_status)='0' then '0' end) as 機房狀態
from tb;

查詢結果:


相關推薦

Oracle Case When判斷結果SQL

資料需求:此SQL是判斷UPS狀態使用1、一個機房有兩個UPS2、當其中一個UPS出現問題時,此時機房的UPS告警狀態為0,否則為13、UPS狀態0異常,1正常4、請編寫一個機房為例子  UPS編碼為:

case when

  sum( case when rss.value=1 then   (case when tvr.vqd_item_30=-1 then 1 else 0 end) else 0 end   ) nok_total_num case when 是支援if

Oracle case when 實現資料欄位資料的判斷過濾

需求 現在有一份管線資料,表中含有欄位buildTime說明了管線的建設日期,我們需要按時間段統計管線的資料 這是,我們需要對管線表中建設日期所對應的欄位進行分類 實現如下: 實現 對現有的資料進行分類判斷過濾,使用到了 case when ca

Oracle CASE WHEN 用法

case when 語法  select t.* , case (selectcolumn) when expression1 then result1 when expression2 then result2 ... when expressionN then resultN e

Oracle CASE WHEN 用法介紹

1. CASE WHEN 表示式有兩種形式 --簡單Case函式 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END --Case搜尋函式 CASE WHEN sex = '1

ORACLE CASE WHEN 及 SELECT CASE WHEN的用法

四,根據條件有選擇的UPDATE。 例,有如下更新條件 工資5000以上的職員,工資減少10%工資在2000到4600之間的職員,工資增加15% 很容易考慮的是選擇執行兩次UPDATE語句,如下所示--條件1 UPDATE Personnel SET salary = salary * 0.9 WH

oracle case when 使用

1. CASE WHEN 表示式有兩種形式 --簡單Case函式 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END --Case搜尋函式 CASE WHEN sex = '1' THEN '男' WHEN

oracle case when then else end用法

語法:   CASE search_expression   當表達1那麼結果1   當表達2那麼結果2 比如客戶型別個人0,機構1,產品2對應的證件型別分別對應1018,1019,1355字典項。 下面舉例說明具體實現:如何把某客戶型別對應的證件型別翻譯成中文

ORACLE CASE WHEN 及 SELECT CASE WHEN的用法

CASE 語句CASE selector   WHEN value1 THEN action1;   WHEN value2 THEN action2;   WHEN value3 THEN action3;   …..   ELSE actionN;END CASE; CA

oracle case when的使用和將列連線成字串

select a.*,b.name as appname, (case a.dbsrctype when 1 then (select serverIp||':'||port||','||userna

oracle case when的使用方法

http://www.2cto.com/database/201205/130090.html 大家都知道Case when的用法,一旦滿足了某一個WHEN ,則這一條資料就會退出CASE WHEN,而不再考慮其他CASE ,文章來詳細的介紹了case when的用法並舉例

oracle case when 查詢各個部門不同工資階段的人數

select d.deptName,e.level1,e.level2,e.level3 from (select deptId,count(case when wage < 5000 then 1 else null end ) level1,count(case w

Repeater中的條件判斷,以及判斷if...else... .

同樣遇到了在Repeater繫結資料過程中增加判斷的問題,百度了一下,看了幾篇文章,大有收穫,遂整理後,結合自己的內容,加以釋出,共同分享! 執行判斷總結起來有兩種方式: 一種是 --<%# DataBinder.Eval(Container.DataI

oracle case when then else end

select subject_name, to_number(subject_index) subject_index, case when data1

SQL語句中把多條記錄同一欄位的值連線成一個字串顯示結果(sql stuff)

SELECT STUFF('abcdef', 2, 3, 'ijklmn'); 結果:aijklmndf。 1. if object_id('[tb]') is not null drop table [tb] go create table [tb]([Inv] int

mysql case when多條件同時滿足的多個and組合的情況,判斷空is null --- 系列一

case when不支援下面2這種寫法(我已經測試過了,大俠如有好辦法,麻煩分享): 情況1:未加括號 select wf.fid id, CASE WHEN wf.Fstep = 1 AND wf.Fstatus = 'Reject' and wf.Fope

mysql case when多條件同時滿足的多個and組合的情況,判斷空is null --- 系列二

方法一: SELECT id, time, type, CASE when (reason is null or reason = '') and type = '駁回' THEN '未填寫駁回理由' ELSE reason END reason from wo

Mybatis關聯查詢結果物件

在查詢時經常出現一對多”的關係,所有會出現巢狀物件的情況,Mybatis在resultMap提供了collection標籤,本文適合有一定Mybatis基礎的讀者查閱 資料模型WeixinActivity2018User.java publ

SQLcase when語句使用

1、簡單的case when語句:      case sex when ’1' then '男' when ’2’ then '女’else ’其他’ end 2、複雜的case when語句:      case when month in (01,02,03) then '第一季度' when mon

使用association標籤實現結果

當需要實現多表查詢的時候,通常需要使用association標籤來進行結果集的巢狀。 ex: 考慮如下情形: 員工表的d_id欄位和部門表的id欄位有一個外來鍵對映關係,現在需要把對應id的員工以及部門全部查找出來。 <select id="getEmpAndD