Здравствуйте Гость [ Вход | Регистрация ] | Форум в сети 7054-й день

Шановні користувачі! Запрошуємо вас до офіційного телеграм-канала 0day Community. Тут ви зможете поспілкуватися одне з одним та дізнатися про останні новини щодо роботи ресурса, поставити запитання до адміністрації, тощо. Перейти до телеграм-канала можна відсканувавши QR-код або натиснувши на посилання: @zeroday_ua

 помогите оптимизировать SQL запрос, mysql

Navern
Jun 25 2018, 17:33
  
Пост #1



Репутация:   552  
Aut vincere , aut mori
****

Группа: Пользователи
Сообщений: 2 861
С нами с: 10-October 06


Добрый день. Нужно оптимизировать данный SQL запрос.


SELECT
    `transaction`.*
FROM
    `transaction`
    LEFT JOIN `transaction_2` ON `transaction`.`id` = `transaction_2`.`transaction_id`
WHERE
    transaction.deleted IS NULL
    AND
    (SELECT SUM(summ) FROM transaction_2 WHERE transaction_id = transaction.id) IS NULL
    OR transaction.summ - (SELECT SUM(summ) FROM transaction_2 WHERE transaction_id = transaction.id) <> 0


Удалось немного улучшить показатели, но не сильно.


SELECT
  transaction.id,
  transaction.summ,
  SUM(transaction_2.summ)
FROM transaction
LEFT JOIN transaction_2 ON transaction.id = transaction_2.transaction_id
WHERE transaction.deleted IS NULL
GROUP BY transaction.id
HAVING SUM(transaction_2.summ) IS NULL OR SUM(transaction_2.summ) <> transaction.summ


Кто-то может помочь? blush.gif
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

Сообщения в этой теме


Reply to this topicStart new topic

 



- Упрощённая версия
Сейчас: 7th July 2025 - 15:58
Сайт не розміщує електронні версії творів, а займається лише колекціонуванням та каталогізацією посилань, що публікуються нашими користувачами. Якщо Ви є правовласником якоїсь частини опублікованого матеріалу та не бажаєте, щоб посилання на нього знаходилось в нашому каталозі, зв’яжіться з нами і ми видалимо його. Файли для обміну надані користувачами сайту і адміністрація не несе відповідальності за їх вміст.