Главная страница
    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.047 c
15-1185805203
Slider007
2007-07-30 18:20
2007.08.26
С днем рождения ! 30 июля 2007 понедельник


15-1185396815
lookin
2007-07-26 00:53
2007.08.26
Как убрать "публичность" папки...


15-1185515813
Vlad Oshin
2007-07-27 09:56
2007.08.26
Что-то вот подумалось. Подавить ошибки, кто-то когдато спрашивал


8-1163509341
dj0n
2006-11-14 16:02
2007.08.26
Распознавание символов


2-1185363189
Mishenka
2007-07-25 15:33
2007.08.26
Button с открывающимся меню...





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский