-1

データベースから最大風、最大風、総雨量の発生時刻を知りたいです。データベースには、observerTime、wind、rain の 3 つの列があります。SQL ステートメントを生成して結果を取得する方法は?

4

3 に答える 3

0

次のようなものを使用できるはずです。

select t1.observerTime, 
  t1.wind, 
  (select sum(rain) from yourtable) TotalRain
from yourtable t1
inner join
(
  select max(wind) MaxWind
  from yourtable
) t2
  on t1.wind = t2.maxwind

デモで SQL Fiddle を参照してください

SQL Server を使用しているため、以下も使用できますrow_number()

select observertime,
  wind,
  (select sum(rain) from yourtable) TotalRain
from
(
  select observertime,
    wind,
    rain,
    row_number() over(order by wind desc) rn
  from yourtable
) src
where rn = 1

デモで SQL Fiddle を参照してください

于 2012-12-05T14:46:20.737 に答える
0

データベースについては言及していませんが、次のいずれかが機能する可能性があります。

select top 1 *, (select sum(rain) from t) as TotalRain
order by wind desc

また:

select *, (select sum(rain) from t) as TotalRain
from t
order by wind desc
limit 1

また

select *, (select sum(rain) from t) as TotalRain
from (select *
      from t
      order by wind desc
     ) t
where rownum = 1
于 2012-12-05T14:29:17.570 に答える
0
select observerTime from t where wind = (select max(wind) from t)

または、発生した最後の日付が必要な場合

select max(observerTime) from t where wind = (select max(wind) from t)
于 2012-12-05T14:02:50.493 に答える