Производительность SQL

 
+
-
edit
 

digger

опытный

По-видимому ничего не поможет : медленная выборка из 1-й таблицы.Там на самом деле 2 условия:

(table1.Size < 10000000) and (DATEDIFF(day,table1.time ,GETDATE()) < 3)

Мое влияние на базу данных минимально,только писать квери,и создавать таблицы нельзя.
 34.034.0

tarasv

опытный

digger> (table1.Size < 10000000) and (DATEDIFF(day,table1.time ,GETDATE()) < 3)
digger> Мое влияние на базу данных минимально,только писать квери,и создавать таблицы нельзя.

DATEDIFF(day,table1.time ,GETDATE()) < 3 - это full scan, если есть индекс по table1.time то
table1.time > DATEADD(day, -3, GETDATE()) должно помоч.
 33.033.0

yacc

старожил
★☆

digger> Мое влияние на базу данных минимально,только писать квери,и создавать таблицы нельзя.
Это МS-SQL? Временные таблицы там создавать не запрещено.
 39.0.2171.7139.0.2171.71

digger

опытный

>table1.time > DATEADD(day, -3, GETDATE())
Индекс есть,вроде помогло.Но база удаленная,а скорость нестабильная, точно померять трудно.
 34.034.0

16-й

опытный
★☆
digger> По-видимому ничего не поможет : медленная выборка из 1-й таблицы.Там на самом деле 2 условия:
digger> (table1.Size < 10000000) and (DATEDIFF(day,table1.time ,GETDATE()) < 3)

Снеси этот GETDATE() в бинденную переменную. Оно и с точки зрения согласованности выборки будет неплохо, а производительность или поднимет, или поднимет пренебрежимо мало.
 

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru