簡體   English   中英

如何獲取特定行的列值的計數?

[英]how to get the count of the column value of a particular row?

我有一張桌子。

在此輸入圖像描述

如何獲取特定行中值為“M”的列值的計數?

例如:如果我給出條件,其中shape_name ='Rectangle',它將返回值為''M'的列的計數。 結果:計數為2

如果是真L左=>結果:計數是4如何得到答案。? 請幫助我解決它。

CASE WHEN的解決方案是這樣的:

SELECT shape_name,
      CASE WHEN a = 'm' THEN 1 ELSE 0 END +
      CASE WHEN b = 'm' THEN 1 ELSE 0 END +
      CASE WHEN c = 'm' THEN 1 ELSE 0 END as mcount
  FROM t1

SQLFiddle

只需將SQL調整為表結構 - 您需要為每列找到更多CASE WHEN語句

非常古老的解決方案 - 獲取所有列,遍歷所有列,並計算M出現次數。

  select SHAPE_NAME ,
            DECODE(COLUMN_NAME1,'M',1,0)+
            DECODE(COLUMN_NAME2,'M',1,0)+
            DECODE(COLUMN_NAME3,'M',1,0)+
            DECODE(COLUMN_NAME4,'M',1,0) your_count
 from  YOUR_TABLE where shape_name='Rectangle' ;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM