Pagila — Tipus, arrays i JSON
Veure com a PDFPostgreSQL és un SGBD objecte-relacional: a més de taules, té arrays, JSON, tipus compostos, enumerats i dominis. A pagila, per exemple, els extres de cada pel·lícula (film.special_features) són un array de text i la classificació (rating) és un tipus enumerat. Practiques els operadors d'arrays (@>, &&, ANY), unnest, jsonb_build_object, jsonb_agg, ->/->>, jsonb_path_query, CREATE DOMAIN, CREATE TYPE … AS ENUM i els tipus compostos.
Aquest problema fa servir la base de dades Pagila (videoclub: pel·lícules, actors, inventari, lloguers i pagaments), amb les taules següents: actor, address, category, city, country, customer, film, film_actor, film_category, inventory, language, payment, rental, staff, store. Pots consultar l'esquema complet amb el botó "View the database schema" d'aquesta mateixa pàgina.
Les consultes s'executen sobre PostgreSQL 17: fes servir la sintaxi de PostgreSQL (i PL/pgSQL per a funcions, procediments i triggers).
Cada pregunta es contesta amb el codi que es demana (funcions, procediments, triggers...), en el seu propi quadre de text. Per corregir-lo, el teu codi s'instal·la sobre la base de dades original i s'hi executen unes proves: es compara el que retorna cada prova (o l'error que dona, si n'ha de donar) i el contingut final de les taules amb el que fa la solució del professor. No cal que facis DROP del que crees: sempre es parteix de zero.
Cada pregunta es contesta amb una consulta SELECT independent, en el seu propi quadre de text. Es comparen el nombre de columnes i les files del resultat; els noms de les columnes i l'ordre de les files no es tenen en compte.
Comentaris