У меня есть эта функция, которая, хотя она возвращает значение правильно, появляется сообщение об ошибке в консоли управления с волнистыми красным подчеркиванием:SQL возвращает правильно, но показывает ошибку в Management Studio
Cannot find either column dbo or the user-defined function or aggregate
Причина это проблема в том, что я обнаружил, что это является причиной ошибки типа данных по линии.
Это функция:
CREATE FUNCTION CALC_DISTANCE(@A_LAT decimal(9,6), @A_LNG decimal(9,6), @B_LAT decimal(9,6), @B_LNG decimal(9,6))
RETURNS int
AS
BEGIN
DECLARE @source geography = geography::Point(@A_LAT, @A_LNG, 4326)
DECLARE @target geography = geography::Point(@B_LAT, @B_LNG, 4326)
DECLARE @MILES float = 0.00062137
DECLARE @D int = (SELECT @source.STDistance(@target) * @MILES * 1.08)
RETURN @D
END
GO
DECLARE @A_LAT decimal(9,6) = '41.60054'
DECLARE @A_LNG decimal(9,6) = '-93.60911'
DECLARE @B_LAT decimal(9,6) = '25.77427'
DECLARE @B_LNG decimal(9,6) = '-80.19366'
SELECT dbo.CALC_DISTANCE(@A_LAT,@A_LNG,@B_LAT,@B_LNG) As 'CALC_DISTANCE (MILES)'
Я новичок в функции SQL, так что это может быть новичку ошибкой.
Благодарим за помощь!
Да, спасибо. Это удаляет сообщение об ошибке. – greener