Skip to content

Instantly share code, notes, and snippets.

@Azzeccagarbugli
Created February 8, 2017 10:43
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Azzeccagarbugli/37b410cd0b04ffb96095f8508f809f00 to your computer and use it in GitHub Desktop.
Save Azzeccagarbugli/37b410cd0b04ffb96095f8508f809f00 to your computer and use it in GitHub Desktop.
Esercizio in MySQL - Automobili
CREATE DATABASE Moso;
USE Moso;
CREATE TABLE Auto (Targa varcahr(7) NOT NULL,
Marca varchar(15) NOT NULL,
Cilindrata integer NOT NULL,
CHECK(Cilindrata>0),
Potenza integer NOT NULL,
CodF varchar(20) NOT NULL PRIMARY KEY UNIQUE,
CodAss varchar(20) NOT NULL PRIMARY KEY UNIQUE);
CREATE TABLE Proprietari (CodF varchar(20)
REFERENCES Auto(CodF),
Nome varchar(20) NOT NULL,
Residenza varchar(30) NOT NULL);
CREATE TABLE Assicurazioni (CodAss varchar(20)
REFERENCES Auto(CodAss),
Nome varchar(20) NOT NULL,
Sede varchar(25) NOT NULL);
CREATE TABLE Sinistro (CodS varchar(20) NOT NULL PRIMARY KEY UNIQUE,
Località varchar(20) NOT NULL,
Data date NOT NULL);
CREATE TABLE AutoCoinvolte (CodS varchar(20)
REFERENCES Sinistro(CodS),
Targa varchar(7)
REFERENCES Auto(Targa),
ImportoDanno integer NOT NULL,
CHECK(ImportoDanno>0));
SELECT Targa, Auto FROM Auto WHERE Cilindrata>'2000' OR Potenza>'120';
SELECT P.Nome, A.Targa FROM Propietario P, Auto A WHERE A.Cilindrata>'2000' AND A.Potenza>'120' AND A.CodF = P.CodF;
SELECT P.Nome, A.Targa FROM Propietario P, Auto A, Assicurazioni Ass WHERE A.Cilindrata>'2000' OR A.Potenza>'120' AND Ass.Nome = 'SARA' AND A.CodF = P.CodF;
SELECT A.Targa, P.Nome FROM Sinistro S, Propietario P, Auto A, Assicurazioni Ass WHERE Ass.Nome = 'SARA' AND A.CodF = P.CodF AND S.Data = '2002/01/20/';
SELECT * FROM Assicurazioni
SELECT AutoCo.Targa, AutoCo.CodS FROM AutoCoinvolte AutoCo JOIN Auto ON Marca="Fiat"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment