Jump to content

Recommended Posts

Добрый лень уважаемы знатаки помогите разобратся.

Оптимизировал все что мог.

Сайт иногда просто зависает на длительное время 10-20 секунд. Смотрю медленые запросы к базе данных там такое:

 

SELECT p.product_id, (SELECT AVG(rating) AS total FROM oc_review r1 WHERE r1.product_id = p.product_id AND r1.STATUS = '1' GROUP BY r1.product_id) AS rating, (SELECT price FROMoc_product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '1' ANDpd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end ='0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) ASdiscount, (SELECT price FROM oc_product_special ps WHERE ps.product_id = p.product_id ANDps.customer_group_id = '1' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND(ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1)AS special FROM oc_product p LEFT JOIN oc_product_description pd ON (p.product_id = pd.product_id)LEFT JOIN oc_product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN oc_product_master pmON pm.product_id = p.product_id WHERE (pm.master_product_id = -1 OR pm.master_product_id > 0 ORpm.master_product_id IS NULL) AND pd.language_id = '3' AND p.STATUS = '1' AND p.date_available <=NOW() AND p2s.store_id = '0' GROUP BY p.product_id ORDER BY p.date_added DESCLCASE(pd.name)DESC LIMIT 0,4

 

Что это заз запрос и как его оптимизировать?

 

еще есть такие данные 

 

Тип выборкиВозможные ключиКлючСсылкаСтрокиДополнительная информацияPRIMARY :p

range

PRIMARY,wg_statusAndDatewg_statusAndDate (4)1417Using where; Using temporary; Using filesortPRIMARY :pm

index

PRIMARY (12)1168Using where; Using indexPRIMARY :p2s

eq_ref

PRIMARY,wg_store_id,store_idPRIMARY (8)ovblviv_gofin.p.product_id,const1Using where; Using indexPRIMARY :pd

eq_ref

PRIMARY,wg_language_id,language_idPRIMARY (8)ovblviv_gofin.p2s.product_id,const1Using whereDEPENDENT SUBQUERY : ps

ref

product_idproduct_id (4)func1Using where; Using filesortDEPENDENT SUBQUERY :

 

Impossible WHERE noticed after reading const tablesDEPENDENT SUBQUERY : r1

ref

product_idproduct_id (4)func1Using where

Share this post


Link to post
Share on other sites

oc_product_master - это не стандартная таблица, попробуйте отключить модуль, который ее использует и посмотрите изменилась ли скорость. 

Share this post


Link to post
Share on other sites

Это таблица, из продукты сериями.

Share this post


Link to post
Share on other sites

1. Ну запросы с  NOW(не кешируются

2. На сколько большая база и что за конфиг сервака? :)

Share this post


Link to post
Share on other sites

спасибо ребята за подсказки это действительно был продукт сериес с ним разобрались, а теперь есть такой SHOW COLUMNS FROM oc_product_description LIKE 'tag'

спасибо огроменое за помощь и отзывчевость форумчан

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Similar Content

    • By Granled
      Здравствуйте составил вот такой запрос к базе данных (необходимо иметь возможность быстро редактировать сумму заказа из формы заказа):
      $tsum = $this->db->query("SELECT total FROM oc_order WHERE order_id=414");
      Как подставить в него id мне более менее понятно, сама база с запроса возвращает правильные данные.
      Вопрос - правильно ли я сделал запрос, так как шаблон переменную не возвращает. Пишет Undefined variable , как ее сделать правильно?
      И вообще можно ли лезть в базу данных с контроллера, или только в модели?
    • By poetiq
      Всем привет!
       
      Подскажите пожалуйста, как можно вернуть предпоследние статусы заказа во всех заказах начиная с определенной даты?
       
      Может есть какой то sql запрос или может какой то скрипт ... я был бы очень благодарен.
       
       
      Программист немного не усмотрел при интеграции с моим складом и все заказы сменили статус на тот что стоял в настройках  а обратно вернуть не знает как.
       
      Заметили не сразу и восстанавливать старую копию базы поздно т.к. уже новые заказы есть.
    • By Fleur
      Помогите написать запрос пожалуйста.
       
      Мне нужно ко всем товарам определенной категории добавить атрибут и задать ему определенное значение.
       
      Буду очень благодарна тем, кто поможет)
       
       
    • By gruz
      Доброго времени суток!
       
       
      есть куча информации по товарам, типа:
      фото, цена, описание, артикул -- все это хранится в файле (файлах) на сервере допустим.
       
      вопрос: можно ли это, точнее как это все добавить в магазин посредством SQL запросов?
       
      допустим, Категории и Производители уже будут созданы, нужно только добавить новый Товар с некоторыми атрибутами.
       
      хотя бы найти запрос, который формируется при нажатии кнопки Сохранить в Товарах.
       
      думаю, это важный вопрос, понятно зачем.
       
      и второе:
      как корректно загружать фото товара в том же запросе?
       
      ----------------------------------------------------------------------------------------------------------------------------------------
      Заранее спасибо!
       
      p.s.: Прошу прощения, видимо нужно было запостить в роздел Программирование, если что перенесите пожалуйста.
    • By Keyser
      Привет.
      Не могу составить запрос в бд магазина.
      Последняя ревизия с допилами и кучей модулей.
      Смысл в том, что бы в описании товаров заменить некоторые слова на синонимы, да-да, типа рерайта.
       
      Как вот сделать запрос апдейта таблицы "product_description" столбца "description" с заменой любого слова, например с хороший на отличный???
  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.