在Oracle SQL的组中查找最大值

时间:2019-06-19 16:21:27

标签: sql oracle

我遇到以下问题(用Oracle SQL编写的SQL代码)

输入

Country  City     Time (datatype=text)
AB       XY       10:00
AB       XY       12:00
AB       XY       15:00
CD       GY       10:30
CD       GY       17:00
DE       ED       11:00
DE       ED       14:00

下面的输出应如下所示,仅选择时间最长的国家和城市

Country  City     Time
AB       XY       15:00
CD       GY       17:00
DE       ED       14:00

目前,我的代码是这样的。我需要做一个子查询,以考虑到最大分区Oracle sql代码

SELECT distinct
country,
city,
time
GROUP BY 1,2,3

1 个答案:

答案 0 :(得分:1)

这不是你想要的

MPOWEL01> select country, city, max(timec) from t1
  2  group by country, city
  3  /

CO CI MAX(T
-- -- -----
AB XY 15:00
CD GY 17:00
DE ED 14:00

3 rows selected.

我认为您不应该将字符(文本)用作TIME值。使用DATE或TIMESTAMP数据类型,仅使用日,月,年常量,或通过TO_CHAR或EXTRACT从实际日期值中提取时间。