Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сложный запрос / 6 сообщений из 6, страница 1 из 1
04.08.2003, 02:53
    #32225924
AlexeyU
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложный запрос
Есть 2 таблицы:
в первой - не дублирующиеся ID, имя продукта, принадлежность к каталогу и т.п.
во второй - те же ID (с возможностью повторяться), дата/время использования этого самого продукта (так сказать history)

Задача: расчитать какой продукт можно использовать в данную минуту при условии что он не может использоваться чаще чем раз в 3 часа.

Подскажите как можно написать подобный запрос - у меня мозги закипают...
...
Рейтинг: 0 / 0
04.08.2003, 07:56
    #32225950
VIG
VIG
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложный запрос
Код: plaintext
1.
2.
select t2.id_product,max(t2.history_time) as Last_use_time from table2 as t2
group by t2.id_product 
having datediff( "h" ,max(t2.history_time),now)< 3 

Если необходимо иметь доп. информацию о продукте из таблицы1 джойнишь этот запрос к ней по id_product
...
Рейтинг: 0 / 0
04.08.2003, 08:28
    #32225954
VIG
VIG
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложный запрос
Sorry,конечно же так
Код: plaintext
1.
2.
select t2.id_product,max(t2.history_time) as Last_use_time from table2 as t2
group by t2.id_product 
having datediff( "h" ,max(t2.history_time),now)>= 3 
...
Рейтинг: 0 / 0
04.08.2003, 08:33
    #32225955
Albert Gor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложный запрос
Новые, ни разу не юзаные, продукты в выборку не попадут.
...
Рейтинг: 0 / 0
04.08.2003, 08:50
    #32225962
VIG
VIG
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложный запрос
Тоди ой. Надо точнее формулировать задачу
Код: plaintext
1.
2.
3.
4.
5.
select t1.id_product , null as Last_use_time from table1 t1 left join table2 t2 on t1.id_product
where t1.id_product is null
union
select t2.id_product,max(t2.history_time) as Last_use_time from table2 as t2
group by t2.id_product 
having datediff( "h" ,max(t2.history_time),now)>= 3 
...
Рейтинг: 0 / 0
04.08.2003, 08:53
    #32225965
VIG
VIG
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложный запрос
Да что это со мной сегодня?
Код: plaintext
1.
2.
3.
4.
5.
select t1.id_product , null as Last_use_time from table1 t1 left join table2 t2 on t1.id_product=t2.id_product
where t1.id_product is null
union
select t2.id_product,max(t2.history_time) as Last_use_time from table2 as t2
group by t2.id_product 
having datediff( "h" ,max(t2.history_time),now)>= 3 
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сложный запрос / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]