lahmanlite/sql/playerstints.sql

49 lines
1.1 KiB
PL/PgSQL

pragma foreign_keys = 0;
begin;
attach database 'baseball-raw.db' as 'raw';
create temp table if not exists "playerstints" (
"player" text,
"year" numeric,
"stint" numeric,
"team" text
);
insert into playerstints
select distinct playerid, yearid, stint, teamid
from "raw".batting
union
select distinct playerid, yearid, stint, teamid
from "raw".pitching
union
select distinct playerid, yearid, stint, teamid
from "raw".fielding;
update playerstints
set team = 'WS9'
where team = 'WAS' and year between 1891 and 1899;
update playerstints
set team = 'PHP'
where team = 'PH4' and year between 1890 and 1891;
-- bbref doesn't say this guy played in 1911
delete from playerstints
where player = 'smithbu01' and year = 1911;
insert into playerstints values
('thompan01',1875,1,'WS6');
create table if not exists main."playerstints" (
"player" text,
"year" numeric,
"stint" numeric,
"team" text,
primary key("player","year","stint"),
foreign key("player","year","team") references "appearances"("player","year","team")
);
insert into main.playerstints select distinct * from temp.playerstints;
commit;