Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- - Démarrage
- docker container run -e POSTGRES_PASSWORD=pwsd -e POSTGRES_USER=user --name axelle -d postgres:11.2-alpine
- docker exec -it axelle bash
- psql -U user
- CREATE DATABASE mydb;
- - Créer tables users, produits, commandes, adresse des users
- users: CREATE TABLE users (id BIGSERIAL, name TEXT, password TEXT);
- products : CREATE TABLE products (id BIGSERIAL, name TEXT, description TEXT);
- products_orders : CREATE TABLE products_orders (id BIGSERIAL, userId BIGINT, productsId BIG
- INT);
- users_adress : CREATE TABLE users_adress (id BIGSERIAL, userId BIGINT);
- - Donnez les users qui ont des commandes
- SELECT * FROM users u INNER JOIN products_orders po ON u.id = po.userId;
- - Donnez les users qui n'ont pas de commandes
- SELECT * FROM users u FULL OUTER JOIN products_orders po ON u.id = po.use
- rId WHERE po.userId IS NULL OR po.productsId IS NULL;
- - Donnez les adresses des users qui ont commandé
- SELECT ua.* FROM users_adress ua INNER JOIN users u ON u.id = ua.userId INNER JOIN products_orders po ON po.userId = u.id;
- - Donnez le nombre de commande par mois
- SELECT COUNT(*), DATE_PART('month', date) as mypart FROM products_orders
- GROUP BY mypart;
- - Donnez la moyenne des id de commandes
- SELECT avg(id), DATE_PART('month', date) as mypart FROM products_orders GROUP BY mypart;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement