Informazioni sulla query di documenti in una raccolta

È possibile cercare uno o più documenti in una raccolta utilizzando una specifica di filtro o Query-by-Example (QBE).

Un QBE è un pattern espresso in JSON. Lo si utilizza per selezionare, da una raccolta, i documenti JSON il cui contenuto corrisponde, il che significa che la condizione espressa dal pattern restituisce true per il contenuto solo di tali documenti. Per ulteriori informazioni sugli ambienti QBE e su come utilizzarli, vedere Panoramica sugli ambienti QBE SODA in Oracle AI Database Introduction to Simple Oracle Document Access (SODA).

Per una raccolta specifica, immettere la stringa QBE nell'editor JSON. Ad esempio, per selezionare i documenti con il nome Mary, immettere {"name":"Mary"} e quindi fare clic su Esegui query, come mostrato nella Figura 5-2. I risultati della query vengono visualizzati nel riquadro in basso a destra.

L'editor offre un elenco completo di comandi disponibili tramite la tavolozza dei comandi. Per aprire la tavolozza dei comandi, premere Ctrl+Maiusc+P. Per un elenco dei tasti di scelta rapida, vedere Keyboard Shortcuts.

Un errore nella query è indicato da un punto rosso nel margine sinistro e da una riga di squiggle sotto il testo specifico. Quando si passa il puntatore del mouse su di esso, viene visualizzato un popup che visualizza le possibili correzioni per la risoluzione dell'errore.

È possibile impostare le preferenze dell'editor utilizzando l'opzione Preferenze nell'elenco a discesa dell'utente in alto a destra nell'intestazione. Alcune delle opzioni disponibili sono Theme (Light, Dark e High contrast dark), Font size and family, Tab size, Word wrap, Ruler, Line numbers e così via.

Le icone sopra l'editor sono:

  • Formatta dati JSON icona json formato: abilita la rientranza e i feed di riga per la stringa QBE.

  • Aggiungi clausola: aggiunge un modello formattato della clausola $orderby o $patch alla stringa QBE.

  • Cancella Icona Cancella: cancella la stringa QBE corrente.

  • Cronologia icona cronologia: recupera le stringhe di ricerca QBE precedenti.

Figura 5-2 Stringa QBE nell'editor JSON

Segue la descrizione della Figura 5-2
Descrizione della "Figura 5-2 QBE String in JSON Editor"

L'espressione QBE deve essere un oggetto JSON valido e può contenere clausole $query e $orderby o $patch. L'espressione QBE viene considerata come una clausola $query se non sono state definite clausole. A partire dalla clausola $query, aggiungere la clausola $orderby o $patch in un secondo momento utilizzando l'elenco Aggiungi clausola. Il contenuto viene trasformato e viene fornito un modello per la clausola $orderby e $patch. È necessario impostare i valori corretti nei modelli. Vedere Utilizzo della funzione di completamento automatico contestuale nell'editor JSON

Ad esempio, si tratta di una semplice query di filtro:

Segue la descrizione di plain_query.png
Descrizione dell'immagine plain_query.png

Dopo l'aggiunta della clausola $orderby mediante Aggiungi clausola, viene visualizzata la seguente voce:

Segue la descrizione di orderby_clause.png
Descrizione dell'immagine orderby_clause.png

Dopo l'aggiunta della clausola $patch, la query viene modificata in:

Segue la descrizione di patch_clause.png
Descrizione dell'illustrazione patch_clause.png

Utilizzo della funzione di completamento automatico nel contesto nell'editor JSON

Se si preme Ctrl+Spazio, l'editor fornisce un elenco di opzioni dipendente dal contesto da cui è possibile selezionare e completare automaticamente al punto di inserimento.

Segue la descrizione di json_code_completion.png
Descrizione dell'immagine json_code_completion.png

Nell'elenco vengono visualizzati i tipi di informazioni riportati di seguito.

  • Filtra clausole di confronto

    Un modello è disponibile per ogni clausola e viene inserito nella posizione del cursore. Ad esempio, quando si seleziona la clausola $between dall'elenco di completamento automatico, nell'editor viene visualizzata la voce seguente:

    Segue la descrizione di filter_clause.png
    Descrizione dell'immagine filter_clause.png

    dove age è il nome della proprietà e 49 e 70 sono valori. Si tratta di parametri che è possibile modificare e che vengono visualizzati evidenziati. È possibile digitare o utilizzare la Guida per il completamento automatico per modificare il nome della proprietà. Premere il tasto Tab per passare al parametro successivo.

  • Nomi delle proprietà dai documenti JSON nella raccolta

    Esistono due origini per i nomi delle proprietà dei documenti JSON:

    • Se viene creato un indice di ricerca con il supporto per la guida dati, viene eseguita la scansione della guida dati JSON del dizionario del database per individuare i nomi delle proprietà.

    • Vengono presentati i nomi di proprietà raccolti dai documenti visualizzati o modificati. È possibile che i nomi delle proprietà siano un sottoinsieme dell'intero spazio di nomi.

    In base al tipo di proprietà, viene inserito il modello correlato e il cursore viene posizionato nel punto previsto per l'inserimento. Di seguito è riportato un elenco di tipi di proprietà, i relativi modelli e la posizione del cursore corrispondente per ciascuno di essi.

    • Oggetto

      "ShippingInstructions.Address": {
      <cursor_here>
      }
    • Array

      "LineItems": [<cursor_here>]
    • Stringa
      "LineItems[*].Part.Description": "<cursor_here>]"
    • Numero
      "PONumber": 0
    • Booleano
      "site_admin": true

    Quando il cursore è tra virgolette doppie ("") e il completamento automatico è attivato, solo il nome della proprietà viene inserito senza modelli o virgolette doppie aggiuntive.