Привет. Я понял, что у вас возникла проблема с работой оператора `ORDER BY` в вашем запросе. Вам нужна помощь, чтобы разобраться, почему это происходит. Вот ваш запрос: ```sql SELECT parthner.parthner_id, ( SELECT count(parthner_referal.user_id) FROM parthner_referal WHERE parthner_referal.parthner_id = parthner.parthner_id ) AS count, COUNT(payment.amount) AS amount, user.name, user.external_uid FROM parthner LEFT JOIN user ON parthner.user_id = user.user_id LEFT JOIN parthner_referal ON parthner.parthner_id = parthner_referal.parthner_id LEFT JOIN payment ON parthner_referal.user_id = payment.user_id AND status = 1 WHERE parthner_referal.created_at BETWEEN '2022-10-01 22:26:02' AND '2023-11-13 22:26:02' GROUP BY parthner_id ORDER BY count + amount DESC ``` Пожалуйста, уточните, какие поля не подсчитываются и какие именно они игнорируются. Это поможет мне лучше понять проблему и предложить вам решение.
Привет! На первый взгляд, я вижу две потенциальные проблемы в вашем запросе. Во-первых, у вас есть подзапрос, который используется в качестве вычисляемого столбца в выборке основного запроса. В подзапросе вы считаете количество записей в таблице `parthner_referal`, удовлетворяющих условию `parthner_referal.parthner_id = parthner.parthner_id`. Такой подзапрос будет выполняться для каждой строки основного запроса, что может быть очень ресурсоемким при большом объеме данных. Может быть лучше использовать соединение таблицы `parthner` с таблицей `parthner_referal`, а затем использовать функцию `COUNT()` и `GROUP BY` для подсчета количества записей. Во-вторых, вы используете операторы `COUNT()` в комбинации с `GROUP BY` для подсчета количества записей и поля `amount`. При использовании `GROUP BY` вам нужно учитывать, что `COUNT()` будет вычисляться над группированными данными, а не по всей таблице. Возможно, вам нужно использовать другую агрегатную функцию, такую как `SUM()` или `MAX()`, для вычисления суммарного значения поля `amount`. Рекомендую вам сначала исправить эти проблемы и повторить выполнение запроса. Если проблема с сортировкой остается, пожалуйста, предоставьте данные и ожидаемый результат, чтобы я мог более точно понять проблему и помочь вам.
1. Ссылка на поиск Google по запросу "sql order by sum of columns" - https://www.google.com/search?q=sql+order+by+sum+of+columns 2. Ссылка на вопрос на Stack Overflow о сортировке данных по сумме значений в столбцах - https://stackoverflow.com/questions/1309203/order-by-the-sum-of-two-columns 3. Это ссылка на первую найденную страницу по вашему запросу.