Size: a a a

UzDev – Сообщество разработчиков Узбекистана

2020 August 27

S

Sm•ok 😈✔️ in UzDev – Сообщество разработчиков Узбекистана
Меч
После питона очень трудно многих полезностей нет. Поэтому и глупый
К примеру?
источник

MZ

Mumin Zokirov in UzDev – Сообщество разработчиков Узбекистана
лучше помалкивать и продолжить заниматься дизайном)
источник

Ф

Фирдавс in UzDev – Сообщество разработчиков Узбекистана
Меч
После питона очень трудно многих полезностей нет. Поэтому и глупый
Полезностей много, например библиотека
isEven и isOdd)))
источник

Ф

Фирдавс in UzDev – Сообщество разработчиков Узбекистана
Меч
После питона очень трудно многих полезностей нет. Поэтому и глупый
Как альтернативный вариант ts
источник

A

Arman in UzDev – Сообщество разработчиков Узбекистана
Фирдавс
Как альтернативный вариант ts
Без js сразу к ts ??
источник

ST

Sardorkhuja Tukhtakh... in UzDev – Сообщество разработчиков Узбекистана
Переслано от Sardorkhuja Tukhtakh...
Ребят, у меня есть такой запрос:

    SELECT p2.login, tr.timestamp::date, p2.partner_id, tr.currency,
     SUM(tr.amount)
     FROM transactions_paysys tr
   LEFT JOIN player p1 on p1.login = tr.login
   LEFT JOIN player p2 on p2.partner_id = p1.ref_id::integer
     WHERE p1.ref_id IS NOT NULL
     AND tr.status = 'success'
     AND tr.type = 'deposit'
   GROUP BY tr.timestamp::date, p2.partner_id, tr.currency, p2.login
   ORDER BY timestamp;

И есть точно такой, но AND tr.type = 'payout'

Подскажите, пожалуйста, как я могу (и могу ли вообще) силами PGSQL найти разницу между столбцами sum этих запросов?

Т.е. я сейчас получаю две таблицы, у обеих есть столбец sum. В первой это сумма депозитов (type='deposit') для каждого партнера за каждый день, в другой — сумма выводов (type='payout').

Мне нужно к получаемым строкам добавить столбец, в котором будет разница между этими двумя sum (депозитами и выводами)
источник

AG

Algoritm Consulting ... in UzDev – Сообщество разработчиков Узбекистана
Case
источник

AG

Algoritm Consulting ... in UzDev – Сообщество разработчиков Узбекистана
A ne prosto v dop kolonku ix cherez -
источник

AG

Algoritm Consulting ... in UzDev – Сообщество разработчиков Узбекистана
Case toje nujen v where ubiraete
источник

AG

Algoritm Consulting ... in UzDev – Сообщество разработчиков Узбекистана
V odnom zaprose vse idet
источник

ST

Sardorkhuja Tukhtakh... in UzDev – Сообщество разработчиков Узбекистана
case использовать, иметее в виду, чтобы проверить, есть ли строка в выводах с такими же данными, как в депозитах?
источник

AG

Algoritm Consulting ... in UzDev – Сообщество разработчиков Узбекистана
Where toje mojno v nachale ispolzovat
источник

Ф

Фирдавс in UzDev – Сообщество разработчиков Узбекистана
Arman
Без js сразу к ts ??
Ну да)
Хотя можно 1 месяц помучаться на js, а потом перейти на ts, будет как глоток свежего воздуха))
источник

ST

Sardorkhuja Tukhtakh... in UzDev – Сообщество разработчиков Узбекистана
Algoritm Consulting Group
Where toje mojno v nachale ispolzovat
но чем это поможет для нахождения разницы?
источник

AG

Algoritm Consulting ... in UzDev – Сообщество разработчиков Узбекистана
Вам же их надо извлечь изначально
источник

AG

Algoritm Consulting ... in UzDev – Сообщество разработчиков Узбекистана
Чтобы минусовать
источник

AG

Algoritm Consulting ... in UzDev – Сообщество разработчиков Узбекистана
И через запятую эти же условия  минусуете
источник

Ф

Фирдавс in UzDev – Сообщество разработчиков Узбекистана
Меч
После питона очень трудно многих полезностей нет. Поэтому и глупый
О, нашёл)
источник

ST

Sardorkhuja Tukhtakh... in UzDev – Сообщество разработчиков Узбекистана
Sardorkhuja Tukhtakhodjaev
Переслано от Sardorkhuja Tukhtakhodjaev
Ребят, у меня есть такой запрос:

    SELECT p2.login, tr.timestamp::date, p2.partner_id, tr.currency,
     SUM(tr.amount)
     FROM transactions_paysys tr
   LEFT JOIN player p1 on p1.login = tr.login
   LEFT JOIN player p2 on p2.partner_id = p1.ref_id::integer
     WHERE p1.ref_id IS NOT NULL
     AND tr.status = 'success'
     AND tr.type = 'deposit'
   GROUP BY tr.timestamp::date, p2.partner_id, tr.currency, p2.login
   ORDER BY timestamp;

И есть точно такой, но AND tr.type = 'payout'

Подскажите, пожалуйста, как я могу (и могу ли вообще) силами PGSQL найти разницу между столбцами sum этих запросов?

Т.е. я сейчас получаю две таблицы, у обеих есть столбец sum. В первой это сумма депозитов (type='deposit') для каждого партнера за каждый день, в другой — сумма выводов (type='payout').

Мне нужно к получаемым строкам добавить столбец, в котором будет разница между этими двумя sum (депозитами и выводами)
Решение (разность на стороне ЯП найти уже не проблема):

   SELECT p2.login, tr.timestamp::date, p2.partner_id, tr.currency,
   SUM(tr.amount) FILTER(WHERE tr.type = 'deposit') AS deposit_amount,
   SUM(tr.amount) FILTER(WHERE tr.type = 'payout') AS payout_amount
     FROM transactions_paysys tr
   LEFT JOIN player p1 on p1.login = tr.login
   LEFT JOIN player p2 on p2.partner_id = p1.ref_id::integer
     WHERE p1.ref_id IS NOT NULL
     AND tr.status = 'success'
   GROUP BY tr.timestamp::date, p2.partner_id, tr.currency, p2.login
   ORDER BY timestamp;
источник

AG

Algoritm Consulting ... in UzDev – Сообщество разработчиков Узбекистана
Aha
источник