fixed createSchema.sql syntax, added container name
This commit is contained in:
parent
dc06005113
commit
576f4a4333
3 changed files with 13 additions and 12 deletions
|
|
@ -1,4 +1,3 @@
|
||||||
FROM postgres:15
|
FROM postgres:15-alpine
|
||||||
|
|
||||||
RUN mkdir /docker-entrypoint-initdb.d
|
COPY createSchema.sql /docker-entrypoint-initdb.d/createSchema.sql
|
||||||
COPY createSchema.sql /docker-entrypoint-initdb.d
|
|
||||||
|
|
@ -1,14 +1,15 @@
|
||||||
CREATE TABLE "user" (
|
CREATE TABLE "user" (
|
||||||
username VARCHAR(32) PRIMARY KEY
|
username VARCHAR(32) PRIMARY KEY
|
||||||
)
|
);
|
||||||
|
|
||||||
CREATE TABLE game (
|
CREATE TABLE game (
|
||||||
id SERIAL PRIMARY KEY,
|
id SERIAL PRIMARY KEY,
|
||||||
score INTEGER NOT NULL,
|
score INTEGER NOT NULL,
|
||||||
playtime TIME NOT NULL,
|
playtime TIME NOT NULL,
|
||||||
date DATE NOT NULL,
|
date DATE NOT NULL,
|
||||||
username VARCHAR(32) NOT NULL FOREIGN KEY REFERENCES "user"
|
username VARCHAR(32) NOT NULL,
|
||||||
)
|
FOREIGN KEY (username) REFERENCES "user"
|
||||||
|
);
|
||||||
|
|
||||||
CREATE VIEW user_data AS (
|
CREATE VIEW user_data AS (
|
||||||
SELECT
|
SELECT
|
||||||
|
|
@ -20,20 +21,20 @@ CREATE VIEW user_data AS (
|
||||||
count(*) AS games_played
|
count(*) AS games_played
|
||||||
FROM game
|
FROM game
|
||||||
GROUP BY username
|
GROUP BY username
|
||||||
)
|
);
|
||||||
|
|
||||||
CREATE VIEW lb_highscore AS (
|
CREATE VIEW lb_highscore AS (
|
||||||
SELECT username, max(score) AS highscore FROM game GROUP BY username ORDER BY highscore DESC
|
SELECT username, max(score) AS highscore FROM game GROUP BY username ORDER BY highscore DESC
|
||||||
)
|
);
|
||||||
|
|
||||||
CREATE VIEW lb_highscore AS (
|
CREATE VIEW lb_highscore AS (
|
||||||
SELECT username, sum(score) AS total_score, FROM game GROUP BY username ORDER BY total_score DESC
|
SELECT username, sum(score) AS total_score FROM game GROUP BY username ORDER BY total_score DESC
|
||||||
)
|
);
|
||||||
|
|
||||||
CREATE VIEW lb_total_playtime AS (
|
CREATE VIEW lb_total_playtime AS (
|
||||||
SELECT username, sum(playtime) AS total_playtime FROM game GROUP BY username ORDER BY total_playtime DESC
|
SELECT username, sum(playtime) AS total_playtime FROM game GROUP BY username ORDER BY total_playtime DESC
|
||||||
)
|
);
|
||||||
|
|
||||||
CREATE VIEW lb_average_score AS (
|
CREATE VIEW lb_average_score AS (
|
||||||
SELECT username, avg(score) AS average_score FROM game GROUP BY username ORDER BY average_score DESC
|
SELECT username, avg(score) AS average_score FROM game GROUP BY username ORDER BY average_score DESC
|
||||||
)
|
);
|
||||||
|
|
@ -3,6 +3,7 @@ version: '3.1'
|
||||||
services:
|
services:
|
||||||
db:
|
db:
|
||||||
build: backend/db
|
build: backend/db
|
||||||
|
container_name: postgres-db
|
||||||
environment:
|
environment:
|
||||||
POSTGRES_DB: rr
|
POSTGRES_DB: rr
|
||||||
POSTGRES_USER: postgres
|
POSTGRES_USER: postgres
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue