Postgres dove nell'array

Postgres dove nell'array
Se hai familiarità con le lingue orientate agli oggetti, potresti aver sentito un concetto molto noto di array. Gli array sono le strutture di dati che contengono lo stesso tipo di elementi o elementi insieme su posizioni di memoria trasmissibile. Per ottenere i valori da una posizione di memoria specifica di un array, dobbiamo usare alcune condizioni nel nostro codice. Il database PostgreSQL consente inoltre di mantenere gli array come dati nelle sue tabelle. Ottenere valori dagli array in PostgreSQL ci fornisce la clausola "dove" per eseguire l'interruzione dei dati. Se stai cercando una guida per imparare su come interrogare i dati dagli array usando la clausola Where, questa guida è pensata per te.

Esempio 01:

Prima di utilizzare la clausola Where per interrogare o recuperare i dati da un array, dobbiamo avere una colonna di tipo array in una tabella di database. Per questo, dobbiamo prima creare una tabella nel nostro database. Quindi, apri lo strumento di query di PostgreSQL PGADmin toccando l'icona dello strumento di query. Utilizzare il comando Crea tabella mostrato nell'immagine seguente per generare una nuova tabella vuota denominata "test" nel database con tre colonne. L'ID colonna è di tipo "int", il nome è di tipo "testo" e i segni di colonna sono di tipo intero. All'esecuzione di questo comando con l'icona "Esegui" dalla barra delle applicazioni, la tabella è stata creata secondo il messaggio di successo.

Per interrogare i dati di array con la clausola dove, dobbiamo avere alcuni dati in una colonna di tipo array. Pertanto, abbiamo usato l'inserto nell'istruzione per aggiungere dati in tutte e tre le colonne della tabella "Test". Per aggiungere i dati in una colonna di tipo array "Marks", dobbiamo utilizzare l'array di parole chiave con i dati tra le staffe quadrate come visualizzato. Abbiamo inserito un totale di 5 record in questa tabella contemporaneamente usando l'icona "run" dalla barra delle applicazioni sopra. I record sono stati inseriti con successo.

Eseguiamo l'istruzione selezionata di PostgreSQL con il carattere "*" per recuperare tutti i record dalla tabella "Test". Durante l'esecuzione della query selezionata, abbiamo tutte e tre le colonne con tutti e 5 i record. Puoi vedere che la colonna "Marks" ha i dati interi del tipo di array.

Prima di utilizzare la clausola Where nella query Seleziona, diamo un'occhiata alla semplice query per recuperare record specifici dalla colonna del tipo di array. Quindi, abbiamo utilizzato l'istruzione Seleziona per recuperare ID, nome e indice 2 Valori dalla colonna "Marks" da una tabella "Test". Dobbiamo specificare l'indice all'interno delle staffe quadrate insieme al nome di una colonna, i.e. Segni [2]. Abbiamo ottenuto il risultato di seguito nell'esecuzione di questo comando tramite il pulsante "Esegui". Puoi vedere che sono stati visualizzati tutti i record dalla colonna ID e nome. D'altra parte, la colonna "Marks" è stata visualizzata con gli unici record nella sua seconda posizione o indice 2 all'interno della tabella "Test".

Usiamo la clausola Where nella nostra query per recuperare record specifici dalla tabella "Test". Quindi, stiamo utilizzando l'istruzione Seleziona nello strumento query per recuperare gli unici record per ID, nome e segni all'indice 2 dal test della tabella. La clausola Where è stata utilizzata come condizione per verificare i record dalla colonna "Marks" in cui l'indice 2 ha un valore pari a 40 o superiore a 40. Dopo aver eseguito questa istruzione, abbiamo ottenuto solo 2 record dalla tabella "Test" in cui il valore all'indice 2 della colonna "Marks" ha un valore di 40 o più di quello visualizzato nell'immagine seguente.

Per scegliere tutti i record dalla tabella con la stessa condizione, dobbiamo utilizzare il carattere "*" nell'istruzione Seleziona. Questo comando mostrerà tutte e tre le voci da un singolo array per entrambi i 2 record del test della tabella.

Esempio 02:

Diamo un'occhiata a un altro esempio di PostgreSQL per utilizzare la clausola Where per recuperare record specifici in diverse posizioni. Per questo, dobbiamo creare una nuova tabella denominata "Nuovo" eseguendo l'istruzione Crea Tabella sullo strumento di query con l'icona "Esegui". Abbiamo aggiunto un totale di 3 colonne ad esso. La prima colonna, "ID" è di tipo intero semplice, la seconda colonna "nome" è di array di tipo di testo e l'ultima colonna "stipendio" è di tipo a array intero bidimensionale. Dopo la sua esecuzione, la tabella è stata creata correttamente.

Inseriremo alcuni record nella tabella di recente generazione "Nuovo" che è attualmente vuota. Per questo, dobbiamo utilizzare l'inserto nell'istruzione all'interno dello strumento di query per aggiungere valori nella colonna ID, nome e salario. Puoi vederlo, per aggiungere valori nella colonna
"Nome" del tipo di array, dobbiamo utilizzare il comando singolo invertito e le staffe ricci per contenere i valori dei tipi di stringa. Per aggiungere record nella colonna dell'array bidimensionale "Stipendio", dovevamo utilizzare le singole virgole invertite intorno alle staffe ricci. Mentre all'interno delle parentesi ricci, dobbiamo usare altre due coppie o parentesi ricci per aggiungere record. Abbiamo aggiunto 5 record in totale.

Vediamo tutti i record per la tabella "Nuovo" utilizzando l'istruzione Seleziona sull'area di query con il personaggio "*". Abbiamo il tavolo "nuovo" in forma completa come di seguito.

Prendiamo i record dalla colonna del tipo di array della tabella "nuovo" usando la clausola. Quindi, abbiamo deciso di recuperare tutti i record di questa tabella in cui l'indice "2" della colonna "nome" non ha valore, i.e. '"" ".Per ottenerlo, dobbiamo utilizzare l'indice 2 in parentesi quadrate insieme al nome di una colonna "nome" utilizzando la clausola. L'istruzione è stata mostrata nell'immagine. Dopo averlo eseguito, abbiamo solo 2 record per questa condizione.

Si trattava di usare la clausola Where su una colonna di array midimensionale per recuperare i record. Usiamo la clausola Where sulla colonna dell'array bidimensionale, i.e. Stipendio. Quindi, abbiamo deciso di recuperare e visualizzare tutti i record "nuovi" della tabella usando il personaggio "*". Abbiamo usato la condizione dove ottenere solo le righe della tabella per le quali l'indice 2 di dimensione 1, i.e. [1] [2] per la colonna "stipendio" ha un valore superiore a 15000. Durante l'esecuzione di questa query, abbiamo 3 record con la colonna salariale 1a dimensione ha un valore superiore a 15000 all'indice 2.

Prendiamo un'altra illustrazione per utilizzare la clausola Where sulla colonna "Stipendio" o Tipo di array. Questa volta, applicheremo la condizione nella seconda dimensione della colonna "stipendio" e del suo rispettivo secondo indice, i.e. [2] [2]. Questa volta, abbiamo solo 2 record per la colonna "stipendio" in cui l'indice 2 della sua seconda dimensione ha un valore inferiore a 27000.

Conclusione:

Quindi questo riguardava l'uso della clausola Where nella tabella PostgreSQL per recuperare i record secondo i valori della colonna di tipo array. Abbiamo discusso di due tipi di un array da usare dove la clausola su di loro, io.e. 1 dimensionale e bidimensionale. Tutti i record sono stati recuperati utilizzando l'indicizzazione degli array.