Slide 18
Slide 18 text
ίʔυྫʢERB - લʣ
WITH all_data AS (
SELECT
u.id,
u.name,
b.registered_on,
b.charge_amount,
NULL AS payment_amount
FROM billings b
INNER JOIN users u
ON b.user_id = u.id
WHERE
b.registered_on BETWEEN :date_from AND :date_to
<% if name.present? %>
AND u.name LIKE :name
<% end %>
UNION ALL
SELECT
u.id,
u.name,
p.registered_on,
NULL AS charge_amount,
p.payment_amount
FROM payments b
INNER JOIN users u
ON p.user_id = u.id
WHERE
p.registered_on BETWEEN :date_from AND :date_to
<% if name.present? %>
AND u.name LIKE :name
<% end %>
)
WITH۟ʢڞ௨ςʔϒϧࣜʣͰҰछͷϏϡʔΛ࡞Δ
ٻใʢ্ʣͱೖۚใʢԼʣΛUNION͢Δ
ը໘Ͱ໊લΛࢦఆ͞ΕͨΒ݅ΛՃ