18 lines
550 B
MySQL
18 lines
550 B
MySQL
|
WITH domain_counts(domain, accounts_count)
|
||
|
AS (
|
||
|
SELECT domain, COUNT(*) as accounts_count
|
||
|
FROM accounts
|
||
|
WHERE domain IS NOT NULL
|
||
|
GROUP BY domain
|
||
|
)
|
||
|
SELECT domain, accounts_count
|
||
|
FROM domain_counts
|
||
|
UNION
|
||
|
SELECT domain_blocks.domain, COALESCE(domain_counts.accounts_count, 0)
|
||
|
FROM domain_blocks
|
||
|
LEFT OUTER JOIN domain_counts ON domain_counts.domain = domain_blocks.domain
|
||
|
UNION
|
||
|
SELECT domain_allows.domain, COALESCE(domain_counts.accounts_count, 0)
|
||
|
FROM domain_allows
|
||
|
LEFT OUTER JOIN domain_counts ON domain_counts.domain = domain_allows.domain
|