Фото с разными расширениями, но с одинаковыми названиями

Уважаемые разработчики cs cart подскажите чем вы руководствовались когда писали запрос вот эти запросы?

SELECT l.* FROM cscart_images AS i, cscart_images_links AS l WHERE (l.image_id = i.image_id OR detailed_id = i.image_id) AND image_path LIKE ‘__57.%’

и им подобные, я так понимаю это для получения картинок. Во первых, что мешало всунуть расширение файла в запрос и тем самым сократить время его выполнения в десятки раз? И как быть когда на сайте сотня тысяч картинок и встречаются файлы с одинаковым названием, но разным расширением?

Так, для сравнения ваш запрос отрабатывает за 1.5 секунды, а запрос

SELECT l.* FROM cscart_images AS i, cscart_images_links AS l WHERE (l.image_id = i.image_id OR detailed_id = i.image_id) AND image_path = ‘__57.jpg’

за 0.037

может быть я чего то не знаю и запрос нужно именно так строить.
Спасибо

2 лайка

Спасибо за информацию. Передали разработчикам для изучения

Это модуль watermark

0.003 ms в той же базе, и только при первичной генерации картинки.

Да, это генерация иконок в Watermarks. Код довольно старый и, возможно, действительно можно его улучшитить

Здравствуйте.

Мы исправили это поведение, теперь запрос не будет использовать LIKE для выборки данных.
Эти изменения войдут в 4.8.2.

Спасибо за информацию.

3 лайка