Relazione uno a molti

CREATE TABLE indirizzi (
id serial UNIQUE NOT NULL,
destinatario varchar(50),
via varchar(25)
);

Usiamo id come chiave primaria:

ALTER TABLE indirizzi
ADD PRIMARY KEY(id);

Aggiungiamo una tabella per le città:

CREATE TABLE città (
id serial UNIQUE NOT NULL,
nome char(25),
cap char(5),
provincia char(2)
);

Inseriamo qualche dato:
INSERT INTO città
(nome,cap,provincia)
VALUES
('San Donà di Piave', '30027', 'VE'),
('Roncade', '31056', 'TV'),
('Silea', '31057', 'TV');

Una certa città è collegata a molti indirizzi: inseriamo una chiave esterna (città_id) che faccia riferimento alla tabella delle città:
ALTER TABLE indirizzi
ADD COLUMN città_id integer NOT NULL,
ADD FOREIGN KEY(città_id)
  REFERENCES città(id)
  ON DELETE CASCADE;

Inseriamo qualche indirizzo:
INSERT INTO indirizzi
(destinatario,via,città_id)
VALUES
('Andrea Ros','XIII Martiri, 86',1),
('Paola Pazzaglia','Canestrelli, 12',3),
('Esmeralda Cacioli','Archibugi, 47',3),
('Maurizia Palude','Carmelitani, 12b', 1);