Skip to content

Instantly share code, notes, and snippets.

@arm5077
Last active October 19, 2015 22:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save arm5077/63250c0336f401b417b2 to your computer and use it in GitHub Desktop.
Save arm5077/63250c0336f401b417b2 to your computer and use it in GitHub Desktop.
Finds donors who have contributed to multiple 2016 campaigns.
ALTER TABLE contributions_individual ADD COLUMN contbr_nm_short varchar(200);
UPDATE contributions_individual set contbr_nm_short = SUBSTRING_INDEX(contributions_individual.contbr_nm, ' ', 2);
SELECT contributions_individual.cand_nm,
contributions_individual.contbr_nm_short,
contributions_individual.contbr_zip,
SUM(contributions_individual.contb_receipt_amt) as total,
b.cand_nm,
b.contbr_nm_short,
b.contbr_zip,
b.total
FROM contributions_individual
JOIN (
SELECT cand_nm,
contbr_nm_short,
contbr_zip,
SUM(contb_receipt_amt) as total
FROM contributions_individual
GROUP BY cand_nm, contbr_nm, contbr_zip
) as b
ON contributions_individual.contbr_nm_short = b.contbr_nm_short
AND LEFT(contributions_individual.contbr_zip, 5) = LEFT(b.contbr_zip, 5)
AND contributions_individual.cand_nm != b.cand_nm
GROUP BY contributions_individual.cand_nm, contributions_individual.contbr_nm, contributions_individual.contbr_zip;
@arm5077
Copy link
Author

arm5077 commented Oct 19, 2015

Initalizing.

@arm5077
Copy link
Author

arm5077 commented Oct 19, 2015

Added an ALTER TABLE to add a condensed contributor name to the basic file, allowing better joins between candidates (who do annoying stuff to names, like add "Mr." sometimes).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment