日期:2014-05-16  浏览次数:20342 次

oracle从分组中找出某个值,分组中是否包含某个值

SELECT

? ? MIN(created_timestamp),

? ? MAX(resource_id),

? ? MAX(price),

? ? MIN(CASE WHEN event_type IN (1704, 1701, 1703)?

? ? ? ? ? ? ? ? ?THEN found_value?

? ? ? ? ? ? ?WHEN event_type = 1707?

? ? ? ? ? ? ? ? ?THEN 1707?

? ? ? ? ? ? ? ? ?ELSE NULL?

? ? ? ? END)

FROM subscriptions

GROUP BY guid ;

?

注:1.从分组中找出某个值,min函数和所有THEN后的返回值必须结合使用。

? ? ? ?2.如果使用min函数。 当满足WHEN条件时,始终取所有THEN后返回值最小的那个。

? ? ? ?3.如果使用max函数。当满足WHEN条件时,始终取所有THEN后返回值中最大的那个。

? ? ??