Поиск:

Ответ в темуСоздание новой темы Создание опроса
> просмотр данных за месяц, выполнить запрос 
:(
    Опции темы
safuat
  Дата 28.1.2008, 01:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 22.10.2006

Репутация: нет
Всего: нет



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



PM MAIL   Вверх
Deniz
Дата 28.1.2008, 06:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1251
Регистрация: 16.10.2004
Где: Новый Уренгой

Репутация: 8
Всего: 44



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

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



--------------------
"Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с)
PM ICQ   Вверх
ТоляМБА
Дата 28.1.2008, 09:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Котэ
***


Профиль
Группа: Завсегдатай
Сообщений: 1607
Регистрация: 15.12.2004

Репутация: 3
Всего: 252



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

PM   Вверх
safuat
Дата 28.1.2008, 12:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 22.10.2006

Репутация: нет
Всего: нет



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

PM MAIL   Вверх
ТоляМБА
Дата 28.1.2008, 14:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Котэ
***


Профиль
Группа: Завсегдатай
Сообщений: 1607
Регистрация: 15.12.2004

Репутация: 3
Всего: 252



Код
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


Это сообщение отредактировал(а) ТоляМБА - 28.1.2008, 14:42
PM   Вверх
safuat
  Дата 29.1.2008, 00:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 22.10.2006

Репутация: нет
Всего: нет



Спасибо,но выражение не срабатывает, буду разбиратся требует файл Datepart.prg. VFP это SQL. smile 
 
PM MAIL   Вверх
ТоляМБА
Дата 29.1.2008, 06:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Котэ
***


Профиль
Группа: Завсегдатай
Сообщений: 1607
Регистрация: 15.12.2004

Репутация: 3
Всего: 252



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

Добавлено через 31 секунду
Поищи в хэлпе у фоксы - есть она, нет?
PM   Вверх
Deniz
Дата 29.1.2008, 06:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1251
Регистрация: 16.10.2004
Где: Новый Уренгой

Репутация: 8
Всего: 44



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

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

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


--------------------
"Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с)
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0991 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.