Size: a a a

2020 May 26

А

Александр in ru_mysql
?
источник

А

Александр in ru_mysql
Можно картинкой
источник

VS

Viktor Sh in ru_mysql
Картинка выше, это он и есть
источник

VS

Viktor Sh in ru_mysql
Viktor Sh
Но делает он вот так:
Вот эта
источник

VS

Viktor Sh in ru_mysql
Он считает точкой входа - категории
источник

VS

Viktor Sh in ru_mysql
источник

А

Александр in ru_mysql
SELECT products.product_id,
   IF(shared_descr.product_id IS NOT NULL, shared_descr.product, descr1.product) as product,
   products.product_type,
   products.parent_product_id
FROM cscart_products as products -- (181 153)
LEFT JOIN
   cscart_product_descriptions as descr1 -- (174 225)
       ON descr1.product_id = products.product_id
           AND descr1.lang_code = 'ru'
LEFT JOIN
   cscart_ult_product_descriptions as shared_descr -- (175 810)
       ON shared_descr.product_id = products.product_id
           AND shared_descr.company_id = 1
           AND shared_descr.lang_code = 'ru'
WHERE 1
   AND (products.usergroup_ids = '' OR FIND_IN_SET(0, products.usergroup_ids) OR FIND_IN_SET(1, products.usergroup_ids))
   AND products.status IN ('A')
   AND products.parent_product_id = 0
   AND EXISTS (
       SELECT NULL
       FROM cscart_product_prices as prices -- (182 628)
       WHERE prices.product_id = products.product_id
           AND prices.lower_limit + 0 = 1
           AND prices.usergroup_id IN (0, 0, 1)
   )
   AND EXISTS (
       SELECT NULL
       FROM cscart_products_categories as products_categories -- (193 554)
       INNER JOIN
           cscart_categories -- (1218)
               ON cscart_categories.category_id = products_categories.category_id
                   AND (cscart_categories.usergroup_ids = '' OR FIND_IN_SET(0, cscart_categories.usergroup_ids) OR FIND_IN_SET(1,cscart_categories.usergroup_ids))
                   AND cscart_categories.status IN ('A', 'H')
       WHERE products_categories.product_id = products.product_id
           AND cscart_categories.company_id+0 = 1
   )
ORDER BY products.product_id desc
LIMIT 0, 10;
источник

А

Александр in ru_mysql
Ща так и план
источник

VS

Viktor Sh in ru_mysql
Всёравно....
источник

VS

Viktor Sh in ru_mysql
источник

DR

Daniyar R in ru_mysql
Здравствуйте! Не могли бы подсказать как очистить лог ошибок за определённый период, то есть удалить записи старше конкретной даты.
источник

А

Александр in ru_mysql
Viktor Sh
Без данных сложно оптимизить.... Но так то это решаемая задача в целом...
источник

А

Александр in ru_mysql
А остальные запросы норм?
источник

VS

Viktor Sh in ru_mysql
Александр
А остальные запросы норм?
Второй и третий сейчас конечно выполняются за 0,067 sec, и 0,043 но это пока по товарам не заполнена популярность, в итоге там будет так же 170 тыс строк
источник

VS

Viktor Sh in ru_mysql
Александр
Без данных сложно оптимизить.... Но так то это решаемая задача в целом...
Тут самое главное обойти создание TMP - это основное время.
источник

А

Александр in ru_mysql
Создать индекс на
popularity.total
и производительность не будет деградировать
источник

А

Александр in ru_mysql
Viktor Sh
Тут самое главное обойти создание TMP - это основное время.
тут самое главное не перебирать все 170к
источник

VS

Viktor Sh in ru_mysql
Можно же делать SELECT прям из индекса?
источник

А

Александр in ru_mysql
тут БД решает как ей лучше делать
источник

G

Gerda in ru_mysql
ребят, есть такой список вопросов к экзамену по базам данных: https://drive.google.com/file/d/17xshrDadAHFb2NHPbSngA7dQlbmPJpkW/view?usp=sharing
Так вот, не подскажете, какую книжку выбрать, чтобы покрыть большую часть этих вопросов, кнш, за целый семестр я делал что-то, ходил на лекции, мне кажется, что я все же не очень много знаю или не помню, поэтому хотелось бы покрыть все это. Да, кнш, я мог это делать с помощью простого гугления, но думаю, что это не образует некую структуру в моей голове.
источник