Tabella: farm
Descrizione (IT): Questa tabella rappresenta le imprese agricole. Nell'architettura di ereditarietà del database, funge da sottotipo diretto della tabellaenterprise. Non memorizza colonne descrittive ridondanti; utilizza invece una chiave primaria condivisa per ereditare tutti gli attributi di alto livello (come nome, posizione, tipo di gestione e geometria) dal suo record enterprise genitore.
Struttura delle colonne
| Colonna | Tipo di dato | Definizione | Valore di esempio | Vincolo? | Geometria? | Commenti |
|---|---|---|---|---|---|---|
id |
BIGINT | Identificativo univoco dell'azienda agricola | 42 |
PK, FK | No | Chiave primaria che funge anche da Chiave Esterna con riferimento a enterprise.id |
Relazioni
- Eredita da (Sottotipo di):
enterprise. La tabellafarmè un'estensione specializzata della tabellaenterprise. - Contiene: Pur non essendo collegata direttamente tramite un
farm_id, un'azienda agricola possiede asset agricoli attraverso la colonnaenterprise_idnella tabellacomponent. Questi componenti includono spesso sottotipi agricoli specializzati come:crop(coltura)livestock(bestiame)agriculture_product(prodotto agricolo)structure(struttura, es. fienili, serre)machinery(macchinari, es. trattori)
!!! tip "Dove si trova il resto dei dati?"
Per trovare il nome, la posizione geografica (geometry, town, country) o i dettagli sulla proprietà di un'azienda agricola, devi unire (join) questa tabella con il record enterprise che condivide lo stesso identico id.
Query di Esempio
Recupera un elenco di tutte le aziende agricole, inclusi i loro nomi, città e coordinate spaziali, unendo la tabella con l'entità genitore enterprise:
SELECT
f.id,
e.name,
e.town,
ST_AsText(e.geometry) as coordinates
FROM
farm f
JOIN
enterprise e ON f.id = e.id
WHERE
e.type = 'FARM';