Форум: "Базы";
Текущий архив: 2004.06.20;
Скачать: [xml.tar.bz2];
ВнизВопрос по датам. Найти похожие ветки
← →
asta © (2004-05-28 11:07) [0]Уважаемые мастера, подскажите пожалуйста. У меня в Query есть поле "Дни рождения", нужно чтобы сортировка проиводилась сначала по месяцу, затем по дню. И еще, - текущий день, т.е. все, кто родился в этот день должны быть в начале. За ранее благодарю!
← →
Соловьев © (2004-05-28 11:09) [1]СУБД?
← →
Sandman25+1 (2004-05-28 11:11) [2]
select 1, month(mydate), day(mydate), *
from mytable
where month(mydate) <> month(today)
or day(mydate) <> day(today)
union all
select 0, month(mydate), day(mydate), *
from mytable
where month(mydate) = month(today)
and day(mydate) = day(today)
order by 1, 2, 3
← →
Sandman25+1 (2004-05-28 11:12) [3]Хотя лучше обойтись без union, добавив case
← →
DenK_vrtz © (2004-05-28 11:15) [4]>т.е. все, кто родился в этот день должны быть в начале
может их лучше цветом другим выделить? :)
← →
Sandman25+1 (2004-05-28 11:19) [5][4] DenK_vrtz © (28.05.04 11:15)
Или locate сделать. Возможно, по кнопке.
← →
Соловьев © (2004-05-28 11:20) [6]Блин, телепаты:) И я хочу. Научите! :)))
← →
Sandman25+1 (2004-05-28 11:23) [7][6] Соловьев © (28.05.04 11:20)
От СУБД зависит только способ получить месяц и день. Сам алгоритм (=логика) запроса от СУБД не зависит :)
← →
asta © (2004-05-28 14:31) [8][6]
Прошу прощения, - Интернет у меня отключился. Да СУБД, цветом я знаю как выделить, мне нужно чтобы были на первом месте.
← →
asta © (2004-05-28 14:34) [9][3]Sandman25+1 (28.05.04 11:11)
Я только вошел в сеть еще не пробовал, но спасибо.
← →
Fay © (2004-05-28 14:40) [10]- СУБД?
- Да, СУБД.....
8)
← →
asta © (2004-05-28 14:40) [11][4] DenK_vrtz © (28.05.04 11:15)
цветом я знаю как выделить, мне нужно чтобы были на первом месте.
← →
asta © (2004-05-28 14:53) [12][2] Sandman25+1 (28.05.04 11:11)
У меня первоначально так:
select a.tn, fam, im, ot,dotar, b.dptname
from bid a, bdp b
where a.ceh=b.ceh and pruv=0
order by den, fam
где dotar - поле с датой рождения. Не знаю как Ваш запрос применить здесь.
← →
Sandman25+1 (2004-05-28 15:06) [13]select 1, extract (month from dotar),
extract (day from dotar),
a.tn, fam, im, ot, dotar, b.dptname
from bid a, bdp b
where a.ceh=b.ceh and pruv=0 and
(extract (month from dotar) <> :m1
or extract (day from dotar) <> :d1)
union all
select 0, extract (month from dotar),
extract (day from dotar),
a.tn, fam, im, ot, dotar, b.dptname
from bid a, bdp b
where a.ceh=b.ceh and pruv=0 and
extract (month from dotar) = :m2
and extract (day from dotar) = :d2
order by 1, 2, 3
← →
asta © (2004-05-28 15:16) [14][13] Sandman25+1 (28.05.04 15:06)
Выдало такую ошибку:
Query1:Field "m1"is of an unknown type.
← →
Sandman25+1 (2004-05-28 15:23) [15][14] asta © (28.05.04 15:16)
Опишите параметры design-time (ptInput, ftInteger).
А в run-time значения им присвойте...
← →
DenK_vrtz © (2004-05-28 15:29) [16]>asta ©
а еще купить(скачать, попросить у кого-нить) литературу. Чаще смотреть справки и читать хелпы!
А еще уроки английского языка не надо было прогуливать :)
← →
sniknik © (2004-05-28 15:36) [17]> мне нужно чтобы были на первом месте.
сделай сортировку по выражению "абсолютное значение(текущая дата - день рождения)", у обоих дат в выражении еще надо год обрезать.
получиш сортировку какую хотел (с неточностью с рождениями 29 февраля)
это в общем, точнее (в коде) не могу, не знаю такой базы "Да, СУБД". :(
← →
asta © (2004-05-28 15:38) [18][15] Sandman25+1 (28.05.04 15:23)
Извините, но я не знаю где это описать, я только начинаю в Delphi...
← →
Sandman25+1 (2004-05-28 15:44) [19][18] asta © (28.05.04 15:38)
Выбираете Ваш TQuery в инспекторе, нажимаете мышкой на Params. Там должны быть 4 ... штучки. Выбираете их (все сразу или по очереди) и указываете: ParamType = ptInput, DataType = ftInteger (или ftSmallint).
В run-time:
Decode(Date, Y, M, D);
Query1.ParamByName("m1").AsInteger := M;
Query1.ParamByName("m2").AsInteger := M;
Query1.ParamByName("d1").AsInteger := D;
Query1.ParamByName("d2").AsInteger := D;
PS. Дальше без меня, уж извините. Вам очень нужно книжки почитать.
← →
asta © (2004-05-28 16:03) [20][16] DenK_vrtz © (28.05.04 15:29)
Спасибо за такие "НУЖНЫЕ СОВЕТЫ", но если все знать и иметь, я бы не обращался сюда за помощью. А на счет английского, в свое время (по моему первому образованию) он (язык) был не так нужен. А сечас да, но это для меня второе высшее образование и уже многое упущено.
← →
asta © (2004-05-28 16:06) [21][19] Sandman25+1 (28.05.04 15:44)
Огромное спасибо!!!
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.06.20;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.029 c