IniziaInizia gratis

Scegliere le rappresentazioni dei tipi di dati

In questo capitolo, hai esplorato molti dei tipi di dato disponibili nei database PostgreSQL, inclusi tipi testuali, numerici, temporali e booleani. Proseguendo con l'esempio dei dati SBA, facciamo un po' di pratica nel determinare quali tipi di dato usare per rappresentare al meglio le informazioni che vuoi archiviare. Per esempio, se volessi capire le rate mensili di un mutuatario, sarebbe utile avere l'importo del prestito e il tasso di interesse rappresentati come valori numerici per facilitare il calcolo.

La tua responsabile ti ha chiesto di creare una nuova tabella loan che richiede di specificare il tipo di dato corretto e le relative proprietà da usare per le colonne della tabella.

Questo esercizio fa parte del corso

Creare database PostgreSQL

Visualizza il corso

Istruzioni dell'esercizio

  • Completa la definizione della tabella loan includendo un approval_date per rappresentare la data in cui un prestito viene approvato inizialmente.

  • Imposta la precisione per la colonna gross_approval a valori decimali in modo da consentire importi del prestito fino a $5.000.000.

  • Fornisci un tipo di dato che rappresenti al meglio la durata (in mesi) del rimborso del prestito usando term_in_months.

  • Definisci il tipo di dato per la colonna revolver_status in modo che sia rappresentata dai valori true e false.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

-- Create the loan table
___ ___ ___ (
    borrower_id INTEGER REFERENCES borrower(id),
    bank_id INTEGER REFERENCES bank(id),
  	-- 'approval_date': the loan approval date
    approval_date ___ NOT NULL DEFAULT CURRENT_DATE,
    -- 'gross_approval': amounts up to $5,000,000.00
  	gross_approval DECIMAL(___, 2) NOT NULL,
  	-- 'term_in_months': total # of months for repayment
    term_in_months ___ NOT NULL,
    -- 'revolver_status': TRUE for revolving line of credit
  	revolver_status ___ NOT NULL DEFAULT FALSE,
  	initial_interest_rate DECIMAL(4, 2) NOT NULL
);
Modifica ed esegui il codice