sale_internals_basket.*
                  
                  
                  FROM
                  
                  
                     b_sale_basket sale_internals_basket
                  
                  
                  WHERE
                  
                  
                     sale_internals_basket.FUSER_ID = 2978617
                  
                  
                     AND sale_internals_basket.LID = 's1'
                  
                  
                     AND (
                  
                  
                        sale_internals_basket.ORDER_ID IS NULL
                  
                  
                        OR sale_internals_basket.ORDER_ID = 0
                  
                  
                     )
                  
                  
                  т.к. ORDER_ID используется в конструкции с OR, индекс по полю ORDER_ID не используется. В итоге получаем очень медленные запросы у пользователей у которых было много заказов.  Кто сталкивался и как решали? Не хочется ломать ядро...
                  
                  
                
Официальный мануал по mysql еще версии 5.5: "You can add an index on a column that can have NULL values if you are using the MyISAM, InnoDB, or MEMORY storage engine" Если бы речь шла про Оракл - я бы согласился с вами
Используем последнюю перкону, Делаю Explain без OR - индекс используется, с OR - нет
перкона - это отдельный разговор
Хотите сказать с переходом на нативный Мускуль эта проблема должна пропасть?
я хочу сказать, что привел цитату из официальной документации.
Обсуждают сегодня