Форум: "Начинающим";
Текущий архив: 2007.08.26;
Скачать: [xml.tar.bz2];
ВнизСкорость выполнения запроса Найти похожие ветки
← →
tytus © (2007-07-31 09:09) [0]Доброе утро мастера. Подскажите, в каком случае будет быстрее выполняться выборка по полю , если оно типа Date или типа varchar2(10) =(30.07.2007)??
← →
Сергей М. © (2007-07-31 09:21) [1]Для ответа на вопрос недостаточно условий выборки.
← →
Sergey13 © (2007-07-31 09:31) [2]> [0] tytus © (31.07.07 09:09)
Быстрее (ощутимо) будет поиск по индексированному полю. Тип поля если и оказывает влияние, то не особо заметно.
← →
SlymRO © (2007-07-31 09:34) [3]Date - 8 байт
varchar(10) - 10 байт
при сравнении 8байт быстрее чем 10байт на 20% :)
← →
SlymRO © (2007-07-31 09:35) [4]и это без учета дисковых операций, с ними также на 20 %
← →
Сергей М. © (2007-07-31 09:39) [5]
> Date - 8 байт
> varchar(10) - 10 байт
Это же зависит от конкретной СУБД.
В одной так, в другой м.б. иначе.
← →
tytus © (2007-07-31 09:40) [6]select a.FDate, a.FName... from t_mytable a
where a.FName="что-то там..."
and a.FDate between "01.07.2007" and "30.07.2007"
-- это эжели текстовое поле
или
and a.FDate>=To_Date("01.07.2007") and a.FDate<=To_Date("30.07.2007")
Вот прим. такого вида
← →
Sergey13 © (2007-07-31 09:41) [7]> [0] tytus © (31.07.07 09:09)
Если вопрос стоит о хранении именно даты, то однозначно дату и надо использовать.
← →
Сергей М. © (2007-07-31 09:45) [8]
> a.FDate between "01.07.2007" and "30.07.2007"
> -- это эжели текстовое поле
Такая конструкция в общем случае даст неверную выборку.
← →
tytus © (2007-07-31 09:45) [9]>Sergey13 © (31.07.07 09:41) [7]
Ну, хранение оно по умолчанию... а вот выборка - дело другое.
Дак где шустрее? Подразумевается, что в таблице будет около 100 000 записей.
← →
tytus © (2007-07-31 09:47) [10]>Сергей М. © (31.07.07 09:45) [8]
Да вы правы. Может выгрести и 01.06.2007 и 01.07.2007.
Так что - хранить как дату? Мне ведь скорость тоже важна....
← →
Sergey13 © (2007-07-31 09:49) [11]> [9] tytus © (31.07.07 09:45)
> Ну, хранение оно по умолчанию... а вот выборка - дело другое.
Не понял я этой фразы, если честно, хотя слова все знакомые. 8-)
← →
Сергей М. © (2007-07-31 09:58) [12]
> tytus © (31.07.07 09:47) [10]
> хранить как дату?
Разумеется !
Мне ведь скорость тоже важна
"Скорость" достигается иными способами - индексы, план запроса, правильное использование транзакционного механизма и т.д. и т.п.
← →
tytus © (2007-07-31 10:04) [13]>Все спасибо, будем хранить как Дату!
До скорого -))
← →
Desdechado © (2007-07-31 15:41) [14]> Такая конструкция в общем случае даст неверную выборку.
Добавлю, что вторая конструкция - тоже может дать неверную выборку, т.к. не указан формат приведения к дате.
А вообще - использовать параметры.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.08.26;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.04 c