65 lines
1.7 KiB
PL/PgSQL
65 lines
1.7 KiB
PL/PgSQL
/*
|
|
Copyright (C) 2024 filifa
|
|
|
|
This program is free software: you can redistribute it and/or modify it under
|
|
the terms of the GNU General Public License as published by the Free Software
|
|
Foundation, either version 3 of the License, or (at your option) any later
|
|
version.
|
|
|
|
This program is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License along with
|
|
this program. If not, see <https://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
pragma foreign_keys = 0;
|
|
|
|
begin;
|
|
attach database 'lahman-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;
|