date

问题描述 投票:0回答:2

我有一个表WEATHER_STATION.Precipitacao像这样的

value | date | station with various values  for example :

valor_observado  |    data_observacao    | estacao 
14                   2020-01-18              X
15                   2020-01-19              X
16                   2020-01-20              X
1                    2020-01-18              Y
2                    2020-01-19              Y
3                    2020-01-20              Y

我想做一个存储过程的日期作为输入,给我的最高值,日期和站。在这个例子中,输入'2020-01-18'的结果将是

data_observacao | valor_observado | estacao
  2020-01-18           14            X 

我做了一个这样的存储过程,但它没有工作(什么都没有出现)。

CREATE PROC PRECIPITACAO_MAXIMA_DATA @data date  AS
select data_observacao=@data , maximo_precipitacao,estacao
from WEATHER_STATION.Precipitacao 
inner join
(select data_observacao= @data ,max(valor_observado) as maximo_precipitacao 
from WEATHER_STATION.Precipitacao) a
on a.data_observacao = WEATHER_STATION.Precipitacao.data_observacao AND a.maximo_precipitacao = valor_observado 
GO

结果是这样的。

data_observacao | valor_observado | estacao

sql stored-procedures inner-join
2个回答
© www.soinside.com 2019 - 2024. All rights reserved.