Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.02.04;
Скачать: [xml.tar.bz2];

Вниз

SQL   Найти похожие ветки 

 
roman001   (2002-01-05 21:15) [0]

Господа, подскажите есть ли в стандартном SQL (для TQuery)
какие-нибудь функции работы с датами, как например выделить
день, год,...


 
roottim   (2002-01-06 14:13) [1]

вообще говоря это не дело стандарта sql
такое делается либо сторедами... как дополнение
либо просто пользуйся апи!
например такой функцией.... вообщем см нелп по нему
int GetDayFromDate(LPSTR szDate);


 
Anatoly Podgoretsky   (2002-01-06 15:56) [2]

Начнем с того, какая база?
Или какой стандарт ты имеешь ввиду, их более одного.
Например в SQL-92 есть функция Extract.


 
Romul   (2002-01-06 17:20) [3]

В СКЛ хрен знает, а в Delphi DecodeDate(Date:TdateTime; Year:Word; Month:Word; Day:Word); Пишу на память поэтому посмотри Хэлп. Спроси конкретнее, я вот например MSSQL2000 юзаю поэтому почти все глюки при работе с датами знаю.


 
roman001   (2002-01-06 17:49) [4]

Например, для сервера MySQL запрос "SELECT YEAR(поле типа DATE) FROM Таблица" вытаскивает год из даты. Можно ли сделать
подобный запрос для обычной парадоксовской базы uses TQuery, такой же запрос здесь НЕ срабатывает?
Extract???


 
Romul   (2002-01-06 18:10) [5]

Так нет, погоди, если в Query написать запрос типа
ADOQuery.SQL.Add("Select Year(WorkTill) from tratata where...");
то все работает так как тебе и надо, а с Paradox х.з.


 
roman001   (2002-01-07 19:53) [6]

Спасибо, буду думать


 
Павел Козловский   (2002-01-07 22:24) [7]

В Парадоксе пишем так:
Год: SELECT EXTRACT(YEAR FROM MyTable."Mydate") AS YYYY FROM MyTable
Месяц: SELECT EXTRACT(MONTH FROM MyTable."Mydate") AS MM FROM MyTable
Ну а день: SELECT EXTRACT(DAY FROM MyTable."Mydate") AS DD FROM MyTable


 
panov   (2002-01-08 07:22) [8]

roman001 (05.01.02 21:15)
В стандарте SQL вроде как таких функций нет,
Но ты всегда можешь работать с ними уже на стороне приложения, не задумываясь, как хранятся даты в БД.
Поле Date есть, как правило, во всех БД, а вот с Time проблемы.
По крайней мере, я знаю один такой формат - DBF.

Поэтому, если программу нужно спроектировать под начально неизвестный тип БД, то лучше всего (по моему мнению) использовать под хранение даты и времени символьные поля.

Например,
20011229082233


 
Anatoly Podgoretsky   (2002-01-08 08:05) [9]

panov © (08.01.02 07:22)
"В стандарте SQL вроде как таких функций нет,"

SQL-92


 
panov   (2002-01-08 08:19) [10]

>Anatoly Podgoretsky © (08.01.02 08:05)
Возможно, но не все реализации СУБД поддерживают такой тип даных как Date.
>roman001 (05.01.02 21:15)

Рекомендую почитать:
http://klariosha.kemtel.ru/DOC/OSBD/contents.htm
"Основы современных баз данных"
С.Д. Кузнецов, информационно-аналитические материалы
Центра Информационных Технологий



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.02.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.039 c
1-8893
Gayrus
2002-01-15 16:51
2002.02.04
StringGrid save


3-8774
Sergant
2002-01-06 17:03
2002.02.04
Просмотр БД в Dos и Win-кодровках без BDE


14-8993
savva
2001-12-17 10:37
2002.02.04
Интересно, а адолго ли умер сервер на Newmail.ru??


1-8821
Anton Shestakov
2002-01-20 00:39
2002.02.04
DateTimePicker


4-9039
YUS
2001-12-09 17:58
2002.02.04
Resurs





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