Вниз
Скачать: CL | DM;

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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.011 c
1-8929
Vacheslav
2002-01-17 11:48
2002.02.04
Как запоминать настройки и полученные значения после закрытия программы


3-8757
kopelev
2001-12-27 11:10
2002.02.04
Как переиндексировать dbf ?


1-8956
Pimin
2002-01-18 23:32
2002.02.04
Транслитерация


4-9044
valery_f
2001-12-03 14:37
2002.02.04
WaveOutxxx


3-8801
Oleg Fomicheff
2001-12-31 05:18
2002.02.04
Не могу создать индекс с параметром Unique ;(((




   Наверх