Código SQL:
La consulta de SQL me da como resultado dos datos un texto y un valor, las funciones escalares solo deben arrojar un valor, pero lo que quiero hacer es que con el valor de cuenta de la consulta hacer una comparación para dar el resultado de la moda, pero no se si esto sea posible.Ver original
ALTER FUNCTION [dbo].[modaHora] ( @fecha datetime, @hr INTEGER ) RETURNS VARCHAR(3) AS BEGIN DECLARE @moda VARCHAR(3) SELECT TOP 1 DIR_VIENTO_TXT AS moda, COUNT(DIR_VIENTO_TXT) AS cuenta FROM datos15minutos WHERE FECHA = @fecha AND HORA = @hr AND DIR_VIENTO_TXT <> 'NULL' GROUP BY DIR_VIENTO_TXT ORDER BY cuenta DESC RETURN @moda END
Saludos.