powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите и мне с запросом
4 сообщений из 4, страница 1 из 1
Помогите и мне с запросом
    #39779643
Rhombus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет

Есть задачка, я вроде решил, но с sql давно дел не имел, гляньте пожалуйста не написал ли я какую-то полную ерунду (хотя я и потестировал и вроде работает).

Структура таблиц
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
create table book
(
book_id integer primary key,
name varchar(128) not null,
release_date date not null
);

create table orders
(
order_id integer primary key,
book_id integer not null,
quantity integer not null,
dispatch_date date not null,
foreign key (book_id) references book(book_id)
);



Нужно выбрать книги, которых продали меньше 10 штук за последний год, кроме тех, которые были выпущены меньше месяца назад.

Получилось как-то так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
select b.book_id
from book b
where release_date < date_sub(curdate(), interval 1 month)
inner join (select book_id from orders
where dispatch_date > date_sub(curdate(), interval 1 YEAR) having sum(quantity) < 10 group by book_id; 
) o
on b.id == o.book_id
...
Рейтинг: 0 / 0
Помогите и мне с запросом
    #39779954
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rhombusвроде работаетНе верю. Он даже синтаксически ошибочен.
...
Рейтинг: 0 / 0
Помогите и мне с запросом
    #39779992
Rhombus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, я потом уже разобрался. Как-то странно плагин в идее работал - он запускал кусок запроса внутри join вместо всего запрос, а я не заметил, что это не то вообще.

Так в итоге сделал
select p.product_id
from product p
left join (
select product_id from orders
where dispatch_date >= date_sub(curdate(), interval 1 YEAR)
group by product_id
having sum(quantity) < 10
) o
on p.product_id = o.product_id
where available_from <= date_sub(curdate(), interval 1 month)
...
Рейтинг: 0 / 0
Помогите и мне с запросом
    #39780092
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А подзапрос-то тут нафига?
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите и мне с запросом
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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