У меня есть приложение PHP, которое извлекает информацию о заказе на основе отсканированного / введенного номера заказа для получения заказа. Мы используем Pervasive SQL, но синтаксис идентичен MS SQL.
У меня есть пара небольших запросов, используемых для разбиения элементов набора на элементы компонентов, которые вызываются по мере необходимости, но они просты и быстро выполняются. Моя проблема - наш основной запрос, в который вставлена самая необходимая информация. Это быстро для большинства заказов, так как они относительно малы (1-15 штук или около того). Моя проблема связана с крупными заказами (например, оптовыми), которые могут в итоге составить более 100 наименований.
Я понимаю, что чем больше информации требуется, тем больше времени потребуется для выполнения запроса, но я надеюсь, что в моем запросе есть место для дальнейшей его оптимизации.
Кто-нибудь видит в следующем запросе что-нибудь, что я могу оптимизировать, чтобы ускорить выполнение крупных заказов?
SELECT
oeordh.orduniq,
oeordh.customer,
oeordh.ordnumber,
oeordh.orddate,
oeordh.salesper1,
oeordd.orduniq,
oeordd.item,
oeordd.pickseq,
oeordd.location,
oeordd.origqty,
arcus.idcust,
arcus.idgrp
FROM oeordh
INNER JOIN oeordd ON oeordh.orduniq = oeordd.orduniq
INNER JOIN arcus ON oeordh.customer = arcus.idcust
WHERE
oeordh.ordnumber = '".$_POST['barcode']."'
ORDER BY oeordd.pickseq`