Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Запрос даты... не могу сделать

5.2K
07 января 2004 года
JumpingJack
7 / / 07.01.2004
Делаю следующий запрос:

Цитата:
SELECT [Booking].[Date_From], [Guest].[Name] FROM Guest INNER JOIN Booking ON [Guest].[Guest_No]=[Booking].[Guest_No] WHERE [Booking].[Date_From] >=#1/8/2003# And [Booking].[Date_From]<=#8/31/2003#;



Тут выводятся все заказы в августе месяце, а как мне сделать чтобы выводились заказы в августе не только 2003 года, но и всех остальных годов? Подстановочные символы не работают... не пойму как это сделать... помогите, плис..

1.9K
08 января 2004 года
AviDen
91 / / 26.12.2003
Цитата:
Originally posted by JumpingJack
Делаю следующий запрос:



Тут выводятся все заказы в августе месяце, а как мне сделать чтобы выводились заказы в августе не только 2003 года, но и всех остальных годов? Подстановочные символы не работают... не пойму как это сделать... помогите, плис..



Если речь идет об MS SQL - тогда во фразе WHERE пиши:

DATEPART (month, [Booking].[Date_From]) = 8

да и вообще, DATEPART кульная хвункция. Подробнее см. MS SQL Books Online.

5.2K
08 января 2004 года
JumpingJack
7 / / 07.01.2004
Нет, речь идет о ACCESS'е, но с этой проблемой я разобрался, в ACCESSE есть функция month(), вот с ее помощью я и решил эту проблему, но.. теперь появилась другая :)

Почти тоже задание: есть несколько отелей, и нужно для КАЖДОГО отеля посчитать - кол-во заказов(тут поблем нет - функция count()) и поделить это число на КОЛ-ВО ЛЕТ! тут можно было бы тоже использовать функцию count, но ведь нельзя учитывать повторяющиеся года.. т.е. есть, к примеру, заказы:
Цитата:

1.в 1998
2.в 1998
3.в 1999
4.в 2000
5.в 2000



и нужно чтобы заказы во ВСЕХ годах делились на 3..

1.9K
08 января 2004 года
AviDen
91 / / 26.12.2003
Цитата:
Originally posted by JumpingJack
Нет, речь идет о ACCESS'е, но с этой проблемой я разобрался, в ACCESSE есть функция month(), вот с ее помощью я и решил эту проблему, но.. теперь появилась другая :)

Почти тоже задание: есть несколько отелей, и нужно для КАЖДОГО отеля посчитать - кол-во заказов(тут поблем нет - функция count()) и поделить это число на КОЛ-ВО ЛЕТ! тут можно было бы тоже использовать функцию count, но ведь нельзя учитывать повторяющиеся года.. т.е. есть, к примеру, заказы:


и нужно чтобы заказы во ВСЕХ годах делились на 3..



За Access не скажу, но по аналогии с month() там должна быть функция year() - вот и используй DISTINCT Year(<My_Date>).

5.2K
08 января 2004 года
JumpingJack
7 / / 07.01.2004
Цитата:
Originally posted by AviDen


За Access не скажу, но по аналогии с month() там должна быть функция year() - вот и используй DISTINCT Year(<My_Date>).



это понятно, но, если я буду использовать DISTINCT Year(), то у меня будут исключаться не только повторяющиейся года, но и все остальные записи.. вот пример того, что у меня есть, как тут сделать то, что мне нужно?

Цитата:
SELECT [Hotel].[Name] AS Отель, Count([Booking].[Date_From]) AS [Число заказов] FROM Hotel INNER JOIN Booking ON [Hotel].[Hotel_No]=[Booking].[Hotel_No] WHERE Month([Booking].[Date_From])>=8 And Month([Booking].[Date_From])<=9 And Month([booking].[Date_to])<9 GROUP BY [Hotel].[Name];

1.9K
08 января 2004 года
AviDen
91 / / 26.12.2003
Цитата:
Originally posted by JumpingJack


это понятно, но, если я буду использовать DISTINCT Year(), то у меня будут исключаться не только повторяющиейся года, но и все остальные записи.. вот пример того, что у меня есть, как тут сделать то, что мне нужно?



Эх, мучайся, наверное сам - тут и так работы полно... :(

5.2K
08 января 2004 года
JumpingJack
7 / / 07.01.2004
Цитата:
Originally posted by AviDen


Эх, мучайся, наверное сам - тут и так работы полно... :(



абыдна, а ты тут один на форуме ччтоль? :)

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог