根据条件从表中选择不同的值

Vishnu Priyan Rangasamy

表结构如下:

++ID++++READ_ID++++READ_TYPE
  101    201          30
  102    201          35
  103    201          40
  104    201          60
  105    202          50
  106    202          60

我需要根据以下条件选择READ_TYPE:

条件1:检查每个READ_ID是否存在30,35或40。如果存在,请在30、35和40之间选择最大的READ_TYPE。例如READ_ID 201具有30、35、40和60。结果必须为40。

条件2:如果不存在30、35或40,则获取read_type的最大值。例如,READ_ID 202具有50和60。结果必须为60。

如何从单个oracle SQL查询中实现。

戈登·利诺夫(Gordon Linoff)

您可以使用条件聚合来做到这一点:

select read_id,
       (case when sum(case when read_type in (30, 35, 40) then 1 else 0 end) > 0
             then max(case when read_type in (30, 35, 40) then read_type end) 
             else max(read_type)
        end) as themax
from t
group by read_id;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

根据条件从不同的表中选择

来自分类Dev

如何根据不同条件从其他表中选择字段

来自分类Dev

如何根据条件从我的表中选择不同的列?

来自分类Dev

在表中选择不同的值

来自分类Dev

比较2个不同的表并根据条件选择值

来自分类Dev

从2个条件不同的表中选择

来自分类Dev

根据不同表中的最大值从表中选择行

来自分类Dev

根据不同表中的最大值从表中选择行

来自分类Dev

MySQL:如何从表中选择不同的值?

来自分类Dev

如何从表中选择不同的值?

来自分类Dev

根据外部表导轨中的值从表中选择

来自分类Dev

如何根据不同的时间范围从多个表中选择数据?

来自分类Dev

根据用户在Django模板中选择不同的样式表

来自分类Dev

根据常用列从多个表中选择不同的列

来自分类Dev

根据约束条件从不同目录的表中选择过滤后的行,以转换为Excel文件

来自分类Dev

根据包含列名的变量从不同的列中选择值

来自分类Dev

从同一表中选择条件不同的字段

来自分类Dev

根据某些文本/值从Selenium中的表中选择行

来自分类Dev

根据列值从单个表中选择多个间隔

来自分类Dev

根据列值从mysql表中选择特定行

来自分类Dev

从表中选择所有具有不同值的列

来自分类Dev

从表中选择具有不同值的所有列

来自分类Dev

从表的多个列中选择不同的值及其计数

来自分类Dev

从3个表中选择mysql中的不同值

来自分类Dev

MySQL从2个表和计数中选择不同的值

来自分类Dev

根据条件选择值

来自分类Dev

从表查询中选择不同的a。*

来自分类Dev

从表中选择不同的类别

来自分类Dev

从表中选择不同的记录

Related 相关文章

热门标签

归档