Optimal table design for prizes that can be int or str I'm storing data about prizes won by competitors during rounds of various events.  Although most prizes are cash, non-cash prizes are awarded too.  A common query will be summing a participant's lifetime cash winnings across events.

A single-table solution with a prize_type attribute doesn't allow me to store cash prizes as INT, so I can't easily sum them.  Using separate tables feels bad.

CREATE TABLE event_prizes_cash (
  event_id INTEGER,
  event_round INTEGER,
  person_id INTEGER,
  place INTEGER,
  amount INTEGER,
  notes TEXT )

CREATE TABLE event_prizes_other (
  event_id INTEGER,
  event_round INTEGER,
  person_id INTEGER,
  place INTEGER,
  prize TEXT,
  notes TEXT )


What's the optimal way to store this data?
Make a prize_money column with the proper currency/float/decimal type and a prize_other column that is text/varchar. Depending on the type of prize, use one or the other.