Domande frequenti - Base

From The Document Foundation Wiki
< Faq‎ | Base
Jump to: navigation, search
This page is a translated version of the page Faq/Base/125 and the translation is 100% complete.

Other languages:
Deutsch • ‎English • ‎français • ‎italiano


Come gestisco i campi vuoti (null)?

Calcoli sui campi

In LibreOffice vengono sempre proposti valori null, tranne quando un calcolo viene eseguito su un campo null. Il risultato di una tale espressione è sempre "Null".

Ad esempio, in un operazione come:

"Totale" - "Acconto"

darà il risultato "Null" se uno dei campi non è stato inserito. La soluzione consiste nell'utilizzare una funzione che verifica se i campi contengono dati o meno. Tra le funzioni disponibili IFNULL 'viene spesso utilizzato. La sua sintassi è

IFNULL(espressione, valore)

Se lespressione è Null', viene restituito il valore, altrimenti viene restituito il valore dellespressione.

Per esempio, IFNULL viene utilizzato per restituire zero quando il campo è vuoto.

Il primo calcolo risulta nullo (mostrato in modo errato) per la riga "1" perché "Acompte" non ha valore

Il comando SQL è

SELECT "ID", "Acompte", "Totale", "Totale" - "Acconto", IFNULL( "Totale", 0 ) - IFNULL( "Acconto", 0 ) FROM "Tabella1"

Selezione di righe con valori nulli

Selezione di righe contenenti campi vuoti.

  • Il criterio di selezione da utilizzare in modalità struttura è:


IS EMPTY


  • Il criterio di selezione in modalità SQL è


IS NULL


  • Per l'esempio sopra

Selezione di righe con valori vuoti


Note

  1. In modalità struttura è anche possibile inserire il criterio IS NULL. Dopo la convalida verrà automaticamente sostituito da IS EMPTY
  2. In modalità SQL è valida solo la sintassi IS NULL


SELECT "ID", "Acconto", "Totale" FROM "Tabella1" WHERE "Acconto" IS NULL


Gestione dei campi booleani

I possibili stati dei campi booleani
  • La selezione di righe con campi booleani non compilati utilizza lo stesso criterio, IS EMPTY.
  • Va notato che un campo booleano può avere tre "stati": selezionato, deselezionato e vuoto.

I due ultimi stati non sono equivalenti: deselezionato = FALSO (falso o 0) e vuoto = indeterminato/non specificato.

  • LibreOffice mostra questi diversi stati come segue: deselezionato = vuoto, non riempito = colore di sfondo
    • IS EMPTY indica casi non compilati (non inseriti)
    • FALSE indica deselezionato (il valore è falso o 0)
    • TRUE indica selezionato (il valore è vero o 1)