Форум: "Прочее";
Текущий архив: 2008.05.04;
Скачать: [xml.tar.bz2];
ВнизMS SQL Server 2000 Найти похожие ветки
← →
usr (2008-03-24 11:39) [0]Создаю функцию. В этой функции проверяются некие условия. Так вот:
Например:
Передаются два значения Val1, Val2
Результатом является разница если Val1 > Val2
CREATE FUNCTION [dbo].[fnR] (@Val1 int, @Val2 int)
RETURNS int AS
BEGIN
DECLARE
@R int
IF @Val1 > @Val2 SET @R = @Val1 - @Val2
RETURN @R
END
И еще один способ:
CREATE FUNCTION [dbo].[fnR] (@Val1 int, @Val2 int)
RETURNS int AS
BEGIN
RETURN CASE WHEN Val1 > @Val2 THEN @Val1 - @Val2 ELSE NULL END
END
Так вот:
Какая из этих функций будет работать быстрей. ?
← →
DiamondShark © (2008-03-24 11:44) [1]
> Так вот:
> Какая из этих функций будет работать быстрей. ?
Нам вместо тебя профайлер запустить?
Выполняешь по миллиону раз каждую функцию, смотришь на результат.
← →
usr (2008-03-24 11:47) [2]Да я просто теоретическое мнение хотел услышать.
← →
DiamondShark © (2008-03-24 12:02) [3]
> Да я просто теоретическое мнение хотел услышать.
Теоретическое мнение такое, что производитель не указывает в документации тайминги и детали реализации своих управляющих конструкций, поэтому любое теоретическое мнение будет переписыванием прочитанного на потолке вилами по воде.
Ещё одно теоретическое мнение состоит в том, что разница в производительности будет настолько мала, что подобное теоретизирование сродни решению вопроса, с какого конца разбивать яйцо.
← →
Anatoly Podgoretsky © (2008-03-24 20:49) [4]> usr (24.03.2008 11:39:00) [0]
Измерить это задачка для форума?
← →
Anatoly Podgoretsky © (2008-03-24 20:50) [5]> usr (24.03.2008 11:47:02) [2]
Ты не теоретик, ты партнер, читай халявщик.
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2008.05.04;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.005 c