Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Выборка по датам [D6, dBase, FoxPro]


RDen ©   (2004-08-04 14:30:00) 

Здравствуйте! В базе имеются поля Фамилия, Дата опроса и Дата рождения. Нужно выбрать фамилии людей, которым на момент опроса было, например 30 лет. Подкажите пож. ,а то уже не соображу под коней раб. дня. Спасибо!


Johnmen   (2004-08-04 16:36:00) [1]

>Соловьев ©   (04.08.04 16:13) [7]

Если есть родившиеся 29.02 тогда надо...


Johnmen   (2004-08-04 16:32:00) [2]

Типа этого
where cast(cast(extract(day from <Датарождения>) as varchar(2))||'.'||
     cast(extract(month from <Датарождения>) as varchar(2))||'.'||
     cast(extract(year from <Датарождения>)+30 as varchar(4)) as date) <= <Датаопроса>


Anatoly Podgoretsky   (2004-08-04 16:28:00) [3]

Соловьев ©   (04.08.04 15:31) [4]
Где ты увидел здесь LocalSQL, обрати особое внимание на  <:>


Соловьев   (2004-08-04 16:13:00) [4]


> там бы можно было бы выделить в запросе от даты год и с
> ним орудовать как с числом,

в localsql есть функция extract которая выделяет год и т.п. Но здесь другой немного случай тут надо еще учитывать высокосные года или нет.


Rule   (2004-08-04 16:04:00) [5]

жалко что не интербейз, там бы можно было бы выделить в запросе от даты год и с ним орудовать как с числом, а это просто, а так прийдется действительно через параметр как сказал
Соловьев ©   (04.08.04 15:31) [4]


Rule   (2004-08-04 16:02:00) [6]

Ну тут вопрос ещё, в каком формате хранится дата рождения


Соловьев   (2004-08-04 15:31:00) [7]


> - 30 лет

это и посчитать будет сложно с помощью localsql
имхо, тогда на клиенте считать
разность Текущая дата - 30 лет и подставлять параметром


Rule   (2004-08-04 15:28:00) [8]

Anatoly Podgoretsky ©   (04.08.04 15:15) [2]
определенно правильно


Anatoly Podgoretsky   (2004-08-04 15:15:00) [9]

Датарождения <= :Текущая дата - 30 лет


сергей1   (2004-08-04 14:49:00) [10]

неужели в foxpro нет функции типа datediff() как в MSSQL ?

а то запрос получается таким

select Фамилия from Table1 where datediff(Дата_опроса - Дата_рожд.) >30


Наверх

Титульная страница Поиск, карта сайта Написать письмо