Compare commits
6 Commits
0664890751
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c46190d5a8 | ||
|
|
e34da70285 | ||
|
|
7900c660a6 | ||
|
|
7ebd375743 | ||
|
|
6e17945d33 | ||
|
|
557e016751 |
@@ -3,7 +3,7 @@
|
|||||||
from [the Lahman database/Baseball Databank](https://seanlahman.com).
|
from [the Lahman database/Baseball Databank](https://seanlahman.com).
|
||||||
|
|
||||||
A makefile and SQL scripts are provided that can create a database from
|
A makefile and SQL scripts are provided that can create a database from
|
||||||
Lahman's CSV files. Ideally, this means that as long as new releases continue,
|
Lahman's CSV files. Ideally, this means that as long as new releases continue
|
||||||
(and the structure of the releases is maintained), an up-to-date database can
|
(and the structure of the releases is maintained), an up-to-date database can
|
||||||
be created. I have also done my best to normalize the data, incorporate
|
be created. I have also done my best to normalize the data, incorporate
|
||||||
constraints, and correct errors I've found.
|
constraints, and correct errors I've found.
|
||||||
|
|||||||
@@ -54,6 +54,15 @@ where startingpos = '';
|
|||||||
delete from allstarstartingpos
|
delete from allstarstartingpos
|
||||||
where startingpos is null;
|
where startingpos is null;
|
||||||
|
|
||||||
|
insert into allstarstartingpos
|
||||||
|
values
|
||||||
|
('ohtansh01', 2021, 0, 'AL', 1),
|
||||||
|
('ohtansh01', 2021, 0, 'AL', 10)
|
||||||
|
;
|
||||||
|
|
||||||
|
delete from allstarstartingpos
|
||||||
|
where startingpos = '1;10';
|
||||||
|
|
||||||
CREATE TABLE "allstarstartingpos" (
|
CREATE TABLE "allstarstartingpos" (
|
||||||
"player" NUMERIC,
|
"player" NUMERIC,
|
||||||
"year" NUMERIC,
|
"year" NUMERIC,
|
||||||
|
|||||||
@@ -15,6 +15,8 @@ this program. If not, see <https://www.gnu.org/licenses/>.
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
pragma foreign_keys = 0;
|
pragma foreign_keys = 0;
|
||||||
|
-- check constraints are disabled for this file because the G_of constraint fails for a lot of records and i don't feel like correcting it right now
|
||||||
|
pragma ignore_check_constraints = 1;
|
||||||
|
|
||||||
begin;
|
begin;
|
||||||
attach database 'lahman-raw.db' as 'raw';
|
attach database 'lahman-raw.db' as 'raw';
|
||||||
@@ -122,8 +124,7 @@ CREATE TABLE IF NOT EXISTS "appearances" (
|
|||||||
"G_lf" NUMERIC check ("G_lf" <= "G_all"),
|
"G_lf" NUMERIC check ("G_lf" <= "G_all"),
|
||||||
"G_cf" NUMERIC check ("G_cf" <= "G_all"),
|
"G_cf" NUMERIC check ("G_cf" <= "G_all"),
|
||||||
"G_rf" NUMERIC check ("G_rf" <= "G_all"),
|
"G_rf" NUMERIC check ("G_rf" <= "G_all"),
|
||||||
-- there should be a G_of <= G_all constraint, but there's a lot of rows that fail and i don't feel like correcting them right now
|
"G_of" NUMERIC check ("G_of" <= "G_all"),
|
||||||
"G_of" NUMERIC,
|
|
||||||
"G_dh" NUMERIC check ("G_dh" <= "G_all"),
|
"G_dh" NUMERIC check ("G_dh" <= "G_all"),
|
||||||
"G_ph" NUMERIC check ("G_ph" <= "G_all"),
|
"G_ph" NUMERIC check ("G_ph" <= "G_all"),
|
||||||
"G_pr" NUMERIC check ("G_pr" <= "G_all"),
|
"G_pr" NUMERIC check ("G_pr" <= "G_all"),
|
||||||
|
|||||||
@@ -15,6 +15,8 @@ this program. If not, see <https://www.gnu.org/licenses/>.
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
pragma foreign_keys = 0;
|
pragma foreign_keys = 0;
|
||||||
|
-- checks are disabled because there's a check for if inducted is Y or N, but there are too many rows i don't feel like correcting right now
|
||||||
|
pragma ignore_check_constraints = 1;
|
||||||
|
|
||||||
begin;
|
begin;
|
||||||
attach database 'lahman-raw.db' as 'raw';
|
attach database 'lahman-raw.db' as 'raw';
|
||||||
@@ -44,8 +46,7 @@ CREATE TABLE IF NOT EXISTS main."halloffame" (
|
|||||||
"ballots" TEXT,
|
"ballots" TEXT,
|
||||||
"needed" TEXT,
|
"needed" TEXT,
|
||||||
"votes" NUMERIC,
|
"votes" NUMERIC,
|
||||||
-- we could have a check for if inducted is Y or N, but there are too many rows i don't feel like correcting right now
|
"inducted" TEXT check ("inducted" in ('Y','N')),
|
||||||
"inducted" TEXT,
|
|
||||||
"category" TEXT,
|
"category" TEXT,
|
||||||
"needed_note" text,
|
"needed_note" text,
|
||||||
PRIMARY KEY("player","year","votedBy")
|
PRIMARY KEY("player","year","votedBy")
|
||||||
|
|||||||
@@ -26,12 +26,18 @@ alter table people drop column "ID";
|
|||||||
|
|
||||||
-- insert some missing people
|
-- insert some missing people
|
||||||
insert into people values
|
insert into people values
|
||||||
('fowlebu99', 1858, 3, 16, 'USA', 'NY', 'Fort Plain', 1913, 2, 26, 'USA', 'NY', 'Frankfort', 'Bud', 'Fowler', 'John W. Jackson', 155, 67, 'R', 'R', null, null, null, 'fowlebu99'),
|
|
||||||
('thompan01', null, null, null, null, null, null, null, null, null, null, null, null, null, 'Thompson', null, null, null, null, null, '1875-04-26', '1875-05-17', null, 'thompan01');
|
('thompan01', null, null, null, null, null, null, null, null, null, null, null, null, null, 'Thompson', null, null, null, null, null, '1875-04-26', '1875-05-17', null, 'thompan01');
|
||||||
|
|
||||||
delete from people
|
delete from people
|
||||||
where playerID = 'kellyho99';
|
where playerID = 'kellyho99';
|
||||||
|
|
||||||
|
delete from people
|
||||||
|
where playerID = 'frazge99';
|
||||||
|
|
||||||
|
update people
|
||||||
|
set bbrefID = 'frazege99'
|
||||||
|
where playerID = 'frazege99';
|
||||||
|
|
||||||
update people
|
update people
|
||||||
set
|
set
|
||||||
birthcountry = nullif(birthcountry, ''),
|
birthcountry = nullif(birthcountry, ''),
|
||||||
@@ -55,6 +61,15 @@ set
|
|||||||
bbrefID = nullif(bbrefid, ''),
|
bbrefID = nullif(bbrefid, ''),
|
||||||
retroID = nullif(retroid, '');
|
retroID = nullif(retroid, '');
|
||||||
|
|
||||||
|
-- we don't know exactly when Alfredo Cabrera died
|
||||||
|
update people
|
||||||
|
set deathMonth = null
|
||||||
|
where deathMonth = 0;
|
||||||
|
|
||||||
|
update people
|
||||||
|
set deathDay = null
|
||||||
|
where deathDay = 0;
|
||||||
|
|
||||||
update people
|
update people
|
||||||
set throws = 'B'
|
set throws = 'B'
|
||||||
where throws = 'S';
|
where throws = 'S';
|
||||||
|
|||||||
Reference in New Issue
Block a user