私はユーザとそれぞれのreferralIdsを持つユーザと呼ばれるテーブルを持っています。一部のユーザーはreferralIdsを持たず、NULLです。 Mysqlは結合を残してヌル値を返さない
は、私は2番目のテーブルの和(transactions.amountが)私に顧客がいる限り収益を与えると呼ばれる取引を持っているようTRANSACTION_TYPE = 1つの問題:私は左にそれは私の収入が表示されます参加やっています照会ごとに生成されます。私は、参照元を持たないユーザーによって生成された収入を示すグループを欲しています。しかし、ヌルreferralIdは、同様にNULL収入を返して、その場合には
SELECT
users.referralId, b.revenue
FROM users
LEFT JOIN
(SELECT
users.referralId, SUM(transactions.amount) AS revenue
FROM
transactions
LEFT JOIN users ON users.username = transactions.username
WHERE
transaction_type = 1 and date(created_at) between @start_date and @end_date
GROUP BY users.referralId) b ON users.referralId = b.referralId
group by referralId