170 похожих чатов

Есть товары (products), города, для каждого города разные цены (city_product), в городах

несколько магазинов по каждому есть наличие (product_shop)

Нужно получить товары для выбранного города,
которые есть хотябы в одном магазине этого города в наличии
и для выбранного города на товар задана цена
с ценой и магазином
select `products`.*,
city_product.price AS price, CASE
WHEN city_product.start_at IS NULL THEN city_product.discount
WHEN city_product.end_at IS NULL THEN city_product.discount
WHEN CURDATE() BETWEEN city_product.start_at and city_product.end_at THEN city_product.discount
ELSE NULL
END as discount
from `products`
inner join `city_product` on `products`.`id` = `city_product`.`product_id`
inner join `product_shop` on `products`.`id` = `product_shop`.`product_id`
inner join `drugstores` on `drugstores`.`id` = `product_shop`.`drugstore_id`
where `city_product`.`city_id` = ?
and `drugstores`.`city_id` = ?
and `product_shop`.`in_stock` > ?
and `shops`.`deleted_at` is null
and `category_id` in (?)
and `city_product`.`price` >= ?
and `city_product`.`price` <= ?
and `products`.`deleted_at` is null
group by `products`.`id` order by `title` asc limit 9

Запрос получается такой, выполняется 500мс +- на 25к товаров эт норм или что то я делаю не так?

1 ответов

10 просмотров

Индексами все обмазал?

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта