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

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

Подскажите как можно написать подобный запрос - у меня мозги закипают...
...
Рейтинг: 0 / 0
Сложный запрос
    #32225950
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
Сложный запрос
    #32225954
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
Сложный запрос
    #32225955
Фотография Albert Gor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новые, ни разу не юзаные, продукты в выборку не попадут.
...
Рейтинг: 0 / 0
Сложный запрос
    #32225962
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
Сложный запрос
    #32225965
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
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сложный запрос
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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