Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 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.044 c
15-1185715044
ya00011
2007-07-29 17:17
2007.08.26
Вопрос админам. Плохой тон или нет?


4-1173057637
Непонятливый
2007-03-05 04:20
2007.08.26
Как из D7 изменить права доступа к файлу/каталогу в Vista/XP?


2-1185858542
tytus
2007-07-31 09:09
2007.08.26
Скорость выполнения запроса


2-1185950827
Mishenka
2007-08-01 10:47
2007.08.26
Не переписывается метод SetWidth


1-1181772512
SkySpeed
2007-06-14 02:08
2007.08.26
Как нормально определить каждое "слово" в коде?..





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский