Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > просмотр данных за месяц, выполнить запрос


Автор: safuat 28.1.2008, 01:46
Доброго времени суток, тут возникла проблема выборкой данных за месяц, 
например пришел человек поликлинику 12/26/2000 потом пришел он 12/28/2000 и т.д.
теперь нужно получить данные сколько было людей в период 12/01/2000 по 12/31/2000, база VFP.
Помогите пожалуйста с запросом.



Автор: Deniz 28.1.2008, 06:44
Опиши структуру БД.
Как идентифицируется человек?
Нужно узнать кол-во людей или кол-во посещений?
Код

select count(distinct IDчеловек), count(IDчеловек) from table where DateField between 'Дата 1' and 'Дата 2'

Автор: ТоляМБА 28.1.2008, 09:43
Если за текущий месяц - как вариант:
Код
SELECT *
FROM Table1
WHERE Datepart("yyyy",Field1)=datepart("yyyy",NOW()) And Datepart("m",Field1)=datepart("m",NOW())
Где NOW() - текущая системная дата, Field1 - поле с датой

Автор: safuat 28.1.2008, 12:34
Мне нужно узнать количество посещений, так человек если первый раз 1 если второй раз и последующий 2. У человека присвоен код. мне нужно количество посещений за месяц, не важно скоко людей.
структура базы
kod - это человек
Perv - это посещения первично или вторично только 1 или 2
Datr -  дата регистрации в базе

Автор: ТоляМБА 28.1.2008, 14:42
Код
SELECT kod, 1
FROM Table1
WHERE Datepart("yyyy",Datr)=datepart("yyyy",NOW()) And Datepart("m",Datr)=datepart("m",NOW())
Group by kod
Having count(kod)=1
union
SELECT kod, 2
FROM Table1
WHERE Datepart("yyyy",Datr)=datepart("yyyy",NOW()) And Datepart("m",Datr)=datepart("m",NOW())
Group by kod
Having count(kod)>1

Автор: safuat 29.1.2008, 00:16
Спасибо,но выражение не срабатывает, буду разбиратся требует файл Datepart.prg. VFP это SQL. smile 
 

Автор: ТоляМБА 29.1.2008, 06:15
Цитата(safuat @  29.1.2008,  02:16 Найти цитируемый пост)
требует файл Datepart.prg
Значит, скорее всего, фокса такую функцию SQL не поддерживает :(

Добавлено через 31 секунду
Поищи в хэлпе у фоксы - есть она, нет?

Автор: Deniz 29.1.2008, 06:52
Цитата(ТоляМБА @  29.1.2008,  09:15 Найти цитируемый пост)
Значит, скорее всего, фокса такую функцию SQL не поддерживает :(

Судя по ответам автора он работает с DBF из фокса.

А теперь вопрос к автору:
С какого перепуга программист на фоксе ищет правду в разделе по Delphi?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)