1 sql oracle aggregate-functions
我想计算在sql中具有特定值的列数.例:
A B C D E
1 2 1 2 2
Run Code Online (Sandbox Code Playgroud)
我如何计算有3列的值为2.
您可以使用解码:
Select decode(a, 2, 1, 0)
+ decode(b, 2, 1, 0)
+ decode(c, 2, 1, 0)
+ decode(d, 2, 1, 0)
+ decode(e, 2, 1, 0)
from my_tab
Run Code Online (Sandbox Code Playgroud)
替代用例:
Select (case a when 2 then 1 else 0 end)
+ (case b when 2 then 1 else 0 end)
+ (case c when 2 then 1 else 0 end)
+ (case d when 2 then 1 else 0 end)
+ (case e when 2 then 1 else 0 end)
from my_tab
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1418 次 |
| 最近记录: |