Модераторы: Akina

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отбор клиентов по дате рождения 
:(
    Опции темы
Vic
Дата 4.11.2004, 15:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



У кого есть желание и время, помогите, пожалуйста.

Есть база в Access. Есть таблица клиентов, куда, в том числе, введены даты рождения. Мне нужна процедура, которая бы отбирала тех клиентов, у которых сегодня день рождения.
То есть должны совпадать месяц и число с текущей датой, а год может отличаться.

Всем буду благодарна за идеи и советы, но лучше хотя бы частично готовый код, а то я буду задавать глупые вопросы.

Заранее всем спасибо.
PM MAIL   Вверх
boevik
Дата 4.11.2004, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1452
Регистрация: 31.5.2004
Где: Израиль

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



Vic, простой select:
Код

SELECT *
FROM Table1
WHERE month(birthday) = month(now) and day(birthday) = day(now)



--------------------
Никогда не говори никогда
PM MAIL WWW   Вверх
Vic
Дата 4.11.2004, 15:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Все гениальное просто.
Спасибо огромное, boevik.
Я с этим столько парилась, нет, чтоб сразу обратиться к знающим людям

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


Советчик
****


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

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



Vic
1) завтра тебе понадобится отбирать тех у кого день рождения завтра-послезавтра (особенно в пятницу...) smile
Если категорически охота своими руками делать, то делай сразу по-человечески, а именно:

Код

SELECT *
FROM Table1
WHERE (Now - DateSerial(Year(Now), Month(birthday), Day(birthday))) BETWEEN 0 AND 2


2) Не лучше ли использовать готовые напоминалки?

Это сообщение отредактировал(а) Akina - 4.11.2004, 15:44


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Vic
Дата 4.11.2004, 15:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Я как-то давно искала готовые напоминалки, мне не подошло ничего. Не помню почему. На счет двух дней я подумаю. не уверена, что в этом есть необходимость. Правда мне удобнее с прошедшим поздравлять.
Тогда надо писать
BETWEEN -2 AND 0 ?
Может тогда будут конкреные решения для учета выходных. Честно говоря, для меня дни рождения на несколько дней неудобны


PM MAIL   Вверх
Akina
Дата 4.11.2004, 16:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


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

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



Цитата
Тогда надо писать
BETWEEN -2 AND 0 ?

может... я о принципе...
Добавлено @ 16:11
Цитата
для меня дни рождения на несколько дней неудобны

ну сделай order by

Цитата
Может тогда будут конкреные решения для учета выходных.

почему нет?

Это сообщение отредактировал(а) Akina - 4.11.2004, 16:09


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Vic
Дата 4.11.2004, 16:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата
Может тогда будут конкреные решения для учета выходных.


Это был вопрос smile . Я просто не правильно сформулировала. Может у кого-то есть конктретные предложения по поводу выходных?


PM MAIL   Вверх
boevik
Дата 4.11.2004, 16:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1452
Регистрация: 31.5.2004
Где: Израиль

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



Цитата
Цитата 
Может тогда будут конкреные решения для учета выходных.



Это был вопрос  . Я просто не правильно сформулировала. Может у кого-то есть конктретные предложения по поводу выходных?

Vic, поподробнее

Это сообщение отредактировал(а) boevik - 4.11.2004, 16:59


--------------------
Никогда не говори никогда
PM MAIL WWW   Вверх
Akina
Дата 4.11.2004, 17:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


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

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



Цитата
Может у кого-то есть конктретные предложения по поводу выходных?

а в чем сложности-то? получить день недели - не проблема, построить запрос в зависимости от оного - тоже...


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Vic
Дата 4.11.2004, 17:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Boevik, поподробнее легко.

В понедельник приходишь на работу и выдается список клиентов, у которых был ДР в субботу, воскресенье и в понедельник. Но в идеале надо, чтобы за три дня выдавался список только в понедельник, а во все остальные дни только за текущий день. Поэтому способ "BETWEEN 0 AND 2" является возможным, но не самым подходящим для меня.

Akina, Я конечно понимаю, что сложностей особенно нет для тебя, но я потрачу на это кучу времени. Поэтому я и спрашиваю в этом форуме. Это быстрее smile .
Так что имейте снисхождение к новичкам.
PM MAIL   Вверх
Akina
Дата 4.11.2004, 18:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


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

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



Vic
Как получить день недели - знаешь? не знаешь? попробуй format(now(),"w").
Как строить запрос в зависимости от дня недели - знаешь? не знаешь? попробуй if format(now(),"w") = vbMonday


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
boevik
Дата 4.11.2004, 23:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1452
Регистрация: 31.5.2004
Где: Израиль

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



Vic, а если были праздники?
Может надо в программе запоминать когда (в какой день) последний раз заходили в программу и выдавать все дни рождения между этими датами?
Подумай над этим.


--------------------
Никогда не говори никогда
PM MAIL WWW   Вверх
Vic
Дата 5.11.2004, 10:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Вот свяжись только с профессионалами. Сразу начнут все усложнять smile
Все правильно, я подумаю над всем, что было предложенно
PM MAIL   Вверх
Akina
Дата 5.11.2004, 11:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


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

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



boevik smile smile smile


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
boevik
Дата 5.11.2004, 15:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1452
Регистрация: 31.5.2004
Где: Израиль

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



Vic, извини, что усложняем тебе жизнь. smile



--------------------
Никогда не говори никогда
PM MAIL WWW   Вверх
Страницы: (3) Все [1] 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

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

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

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


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

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


 




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


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

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