Conformità standard GQL per graph in Microsoft Fabric

Graph in Microsoft Fabric implementa lo standard ISO/IEC 39075:2024 — Information Technology — Linguaggi di database - Standard GQL . Questo articolo esegue il mapping del supporto corrente del grafico rispetto alla conformità minima e ai gruppi di funzionalità facoltativi definiti nello standard. Controllare di nuovo la disponibilità di aggiornamenti man mano che vengono aggiunte le funzionalità.

Questo articolo di riferimento è destinato a:

  • Architetti aziendali che valutano la copertura GQL del grafico.
  • Sviluppatori che eseguono la migrazione di query da un altro database conforme a GQL.
  • Ingegneri che convalidano le attestazioni di conformità rispetto alla specifica.

Se si inizia a usare GQL in Fabric, vedere invece la guida al linguaggio GQL .

Come leggere questo articolo

Le tabelle in questo articolo adottano le seguenti convenzioni:

Nome della colonna Descrizione
Sottochiave o ID funzionalità Identificatore dello standard GQL. Le funzionalità minime di conformità usano numeri secondari (ad esempio, 14.4). Le funzionalità facoltative usano ID funzionalità dell'allegato D( ad esempio G004 o GQ15).
Funzionalità o funzionalità Nome o descrizione della funzionalità o della funzionalità.
Supported Sì : completamente supportato. Parziale : alcune funzionalità secondarie sono supportate. No: attualmente non supportato.
Note Dettagli di implementazione, vincoli noti o collegamenti alla documentazione pertinente.

Conformità del modello di dati

Graph implementa il modello a grafo delle proprietà etichettato . La tabella seguente riepiloga il supporto del modello di dati.

ID funzionalità Feature Supportato Notes
GG02 Grafico con un tipo di grafo chiuso Sì Graph usa tipi di grafo chiusi che definiscono i tipi di nodo consentiti e i tipi di arco.
GG20 Nomi espliciti dei tipi di elemento Sì I tipi di nodo e di arco sono identificati dai nomi di etichetta definiti nel tipo di grafo.
GG23 Set di etichette chiave del tipo di elemento facoltativo Sì Il set di etichette chiave di un tipo di elemento è il nome del tipo di elemento.
GH02 Bordi non diretti No Tutti i bordi sono diretti.
GV11, GV12, GV17, GV24, GV31 Tipi di valore della proprietà Sì Per i tipi di proprietà dei modelli di grafo disponibili tramite l'esperienza di modellazione Fabric, vedi Tipi di dati. UINT64 è disponibile come tipo di valore di query/runtime ma non viene esposto come tipo di proprietà di modello grafico nell'interfaccia utente. GV08, GV21, GV40 e GV07 presentano delle sfumature—vedi la sezione GV.

Conformità minima

Lo standard GQL (Subclause 5.3.7) definisce la conformità minima come supporto per tutte le funzionalità obbligatorie, ovvero la sintassi completa del linguaggio e la semantica non controllata da un ID funzionalità facoltativo. Funzionalità obbligatorie dei documenti di allegato H informativi dello standard. Oltre alla conformità minima, un'implementazione può richiedere il supporto per zero o più funzionalità facoltative identificate dagli ID funzionalità nell'allegato D dello standard.

Oltre alle funzionalità obbligatorie, Subclause 24.2 richiede che un'attestazione di conformità minima includa:

  1. Supporto per almeno una delle funzionalità GC00 ("Popolamento automatico dei gragrafi") o funzionalità GC04 ("Gestione dei gragrafi"). Vedere la sezione GC.
  2. Attestazione di conformità a una versione Unicode specifica (non inferiore a 13.0.0). Le stringhe di caratteri nel grafico sono Unicode con UCS_BASIC regole di confronto.
  3. Supporto per almeno questi tipi di valore della proprietà: STRING (o VARCHAR) BOOL (o BOOLEAN), con segno INTEGER (o INT) e FLOAT.

Le tabelle seguenti riepilogano lo stato corrente del supporto del grafico per le funzionalità obbligatorie, organizzate in base all'area funzionale.

Gestione di sessioni e transazioni (sottoclause 7-8)

Sottoclause Capability Supportato Notes
7 Gestione delle sessioni No
8 Gestione delle transazioni No

Espressioni oggetto (Subclause 11)

Sottoclause Capability Supportato Notes
11 Espressioni di oggetto No <graph expression>, <binding table expression>, <object expression primary>e CURRENT_GRAPH non sono attualmente supportati.

Istruzioni di query (Sottoclause 14)

Sottoclause Capability Supportato Notes
14.3 Istruzione di query lineare Sì Sono supportati il concatenamento di istruzioni di base e la composizione avanzata.NEXT Ogni stadio può contenere un'unione di blocchi di interrogazione.
14.3 Specifica di query annidata No La funzione ISO di specifica di query annidata non è supportata. Le sottoquery inline CALL e le sottoquery EXISTS procedurale sono caratteristiche supportate separate; le sottoquery inline CALL possono essere annidate.
14.4 MATCH istruzione Sì MATCH con criteri di ricerca.
14.4 OPTIONAL MATCH istruzione Sì OPTIONAL MATCH restituisce NULL per le variabili non corrispondenti anziché filtrarle.
14.9 ORDER BY istruzione e pagina Sì ORDER BY, OFFSETe LIMIT.
14.10 Istruzione dei risultati primitiva Sì Supportato tramite RETURN.
14.11 RETURN istruzione Sì RETURN con proiezioni, alias e GROUP BY.
14.12 SELECT istruzione No Utilizzare invece RETURN.

Enunciati condizionali (sottoclausola 15.4)

Sottoclause Capability Supportato Notes
15.4 Enunciato condizionale ricercato Sì WHEN, THEN, e ELSE instradare ogni riga di input al primo ramo corrispondente. Questa affermazione non è un'espressione ricercata CASE .

Modelli grafici ed elementi comuni (Subclause 16)

Sottoclause Capability Supportato Notes
16.1 AT clausola schema No
16.3 Tabella di associazione di criteri a grafo Sì Lego di percorso e aggregazione di liste di gruppi.
16.4 Modello a grafo Sì Modelli anonimi semplici, modelli di arco denominati e modelli composti con WHERE clausola .
16.4 Modelli di nodo Sì (n:Label) sintassi con dichiarazioni di variabili di elemento, espressioni di etichetta e specifiche delle proprietà.
16.4 Modelli di arco (diretto completo) Sì ->Modelli di arco diretto , <-, e -[]- .
16.4 Specifica della proprietà dell'elemento Sì {key: value} predicati delle proprietà inline.
16.5 Inserisci criterio grafico No La sintassi GQL INSERT non è supportata. I dati del grafo vengono caricati tramite la gestione dei dati.
16.7 Espressione del criterio di percorso Sì Modelli di percorso con attraversamenti di composizione e lunghezza variabile.
16.7 Concatenazione del percorso Sì Modelli multi hop tramite la sintassi sequenziale node-edge-node.
16.8 Espressione etichetta Sì Etichettare le espressioni con & operatori (AND), \| (OR) e ! (NOT).
16.9 Riferimento alle variabili di percorso Sì Le variabili di percorso possono essere associate e restituite.
16,10 Informazioni di riferimento sulle variabili di elemento Sì Variabili dell'elemento Node e edge.
16.13 clausola WHERE Sì FILTER istruzione e inline WHERE nei predicati del modello.
16.14 clausola YIELD No
16.16 clausola ORDER BY Sì ORDER BY con ASC/ASCENDING e DESC/DESCENDING.
16.17 Elenco delle specifiche di ordinamento Sì Più tasti di ordinamento con direzione di ordinamento.

Predicati (sottochiave 19)

Sottoclause Capability Supportato Notes
19.3 Predicato di confronto Sì Operatori di confronto: =, <><, >, <=>=.
19.4 predicato EXISTS Parziale Sono supportate sottoquery procedura-modulo EXISTS . Il modulo solo per pattern grafici non è supportato.
19.5 predicato NULL Sì IS NULL e IS NOT NULL.
19.7 predicato NORMALIZED No Il IS [NOT] NORMALIZED predicato non è attualmente supportato. La NORMALIZE() funzione è supportata. Vedere Subclause 20.24.

Graph supporta anche leALL funzioni predicate , ANY, NONE, e SINGLE list come estensione specifica del linguaggio Graph.

Espressioni e funzioni di valore (Sottoclause 20)

Sottoclause Capability Supportato Notes
20.2 Espressione valore primaria Sì Valori letterali, riferimenti a variabili, accesso alle proprietà ed espressioni racchiuse tra parentesi.
20.3 Specifica del valore Parziale Sono supportati valori letterali e riferimenti a variabili. SESSION_USER e la specifica dei parametri dinamici non sono attualmente supportati.
20.7 espressione CASE Parziale Semplici CASE, COALESCE, e NULLIF sono supportate. Le espressioni ricercate CASE WHEN attualmente non sono supportate.
20.9 Funzione di aggregazione Sì COUNT, , , , e MAX supportano DISTINCT e ALL setano quantificatori e aggregati specifici FILTER (WHERE ...) con un opzionale LIMIT. MINAVGSUM Graph supporta COLLECT_LISTanche , COLLECT_ONE, e COLLECT_ELEMENTS.
20.11 Informazioni di riferimento sulle proprietà Sì Accesso alle proprietà dot-notation su nodi e bordi.
20.12 Informazioni di riferimento sulle variabili di associazione Sì Riferimenti a variabili nelle espressioni.
20.20 Espressione valore booleana Parziale AND, ORsono NOT supportati. IS [NOT] TRUE/FALSE/UNKNOWN i test non sono attualmente supportati.
20.21 Espressione valore numerico Sì Operatori aritmetici: +, -, *, /.
20.22 Funzione valore numerico Parziale CHAR_LENGTH, ABS, POWER, , le funzioni trigonometriche e RANGE sono supportate. Le CHARACTER_LENGTH funzioni alias e ceiling, floor, logaritmica, modulus, esponenziale e a radice quadrata non sono supportate.
20.23 Espressione valore stringa Sì Concatenazione di stringhe con l'operatore \|\| .
20.24 Funzione stringa di caratteri Parziale Sono supportati i dispositivi consapevoli UPPERdi Unicode , LOWER, espliciti TRIM, e NORMALIZE con NFC o NFD. LEFT e RIGHT non sono attualmente supportati.
20.25 Funzione stringa byte No I tipi di stringa di byte non sono supportati.
20.27 Funzione datetime value Sì CURRENT_TIMESTAMP è supportato. Vedere valori datetime con zone.
20.29 Funzione Valore durata Parziale DURATION(string) costruisce una durata diurna. Puoi sottrarre valori data-time-zonati per ottenere una durata, ma attualmente la DURATION_BETWEEN funzione non è supportata.

Tipi valore (subclause 24.2)

Graph supporta tutti e quattro i tipi di valore della proprietà obbligatori: BOOL, , STRINGcon segno INTEGER (64 bit) e FLOAT, oltre a tipi aggiuntivi. Per informazioni di riferimento sul tipo completo, vedere Valori e tipi di valore GQL.

Elementi lessicali (Subclause 21)

Sottoclause Capability Supportato Notes
21.1 Nomi e variabili Sì Associazione di variabili con regole di ambito forward. Identificatori regolari e delimitati.
21.2 Literals Sì Valori letterali per valori booleani, interi, numeri a virgola mobile, stringhe (con escape in stile C e SQL), NULLe .
21,3 Token, separatori, identificatori Sì Regole lessicali GQL standard.

Conformità facoltativa delle funzionalità

Un ID funzionalità identifica le funzionalità facoltative. Inizia con "G" seguito da una lettera di gruppo e cifre. Le sezioni seguenti organizzano le funzionalità per gruppo.

G — Funzionalità dei criteri di grafo

ID funzionalità Feature Supportato Notes
G002 Modalità di corrispondenza archi diversi Sì DIFFERENT EDGES e DIFFERENT RELATIONSHIPS rafforzare l'unicità degli archi lungo tutto il diagramma del grafo.
G003 Parola chiave explicit REPEATABLE ELEMENTS Sì REPEATABLE ELEMENTS è supportata ed è la modalità di partita predefinita.
G004 Variabili di percorso Sì L'associazione di variabili di percorso è supportata.
G005 Prefisso di ricerca percorso in un modello di percorso Sì Sono supportati prefissi esplicitiALL e ANY SHORTEST prefissi.
G006 Clausola pattern KEEP graph: prefisso della modalità percorso No
G007 Clausola pattern KEEP graph: prefisso di ricerca del percorso No
G010 Parola chiave explicit WALK Sì WALK Permette nodi e archi ripetuti in percorsi abbinati ed è la modalità di percorso predefinita.
G011 Modalità di percorso avanzate: TRAIL Sì TRAIL impedisce l'attraversamento dei bordi duplicati.
G012 Modalità di percorso avanzate: SIMPLE Sì SIMPLE Previene la ripetizione dei nodi, tranne quando il primo e l'ultimo nodo sono uguali. Evita anche la ripetizione dei bordi perché il riutilizzo dei bordi ripezionerebbe i nodi endpoint.
G013 Modalità di percorso avanzate: ACYCLIC Sì ACYCLIC impedisce tutti i nodi ripetuti e, quindi, tutti gli archi ripetuti.
G014 Parole chiave esplicite PATH/PATHS Sì Le opzioni opzionali PATH e PATHS le parole chiave sono supportate nella modalità percorso e nei prefissi di ricerca percorso.
G015 Tutte le ricerche di percorso: parola chiave explicit ALL Sì ALL è supportata esplicitamente ed è la ricerca del percorso predefinita.
G016 Qualsiasi ricerca di percorso No
G017 Tutte le ricerche di percorsi più brevi No
G018 Qualsiasi ricerca di percorso più breve Sì ANY SHORTEST restituisce un percorso più breve per ogni coppia sorgente-destinazione da ogni riga di input. I pareggi non sono deterministici.
G019 Ricerca percorso più breve conteggiata No
G020 Ricerca di gruppi con conteggio più breve No
G030 Alternanza multiset percorso No
G031 Alternanza di percorsi multiset: operandi di percorso a lunghezza variabile No
G032 Unione dei criteri di percorso No
G033 Unione dei criteri di percorso: operandi di percorso a lunghezza variabile No
G035 Percorsi quantificati Sì Modelli a lunghezza variabile delimitata con {m,n} sintassi.
G036 Bordi quantificati No Sono supportati solo i percorsi quantificati .
G037 Percorsi interrogativi No
G038 Espressione del modello di percorso racchiusa tra parentesi No
G039 Espressione di criteri di percorso semplificata: impostazione predefinita completa No
G041 Predicati del modello di elemento non locale No I predicati non locali che fanno riferimento a variabili esterne all'elemento pattern corrente non sono attualmente supportati. Sono supportati predicati locali WHERE nei filtri dei nodi e dei bordi.
G043 Modelli completi di arco Sì Modelli di bordi diretti completi con -> e <-.
G044 Modelli di arco abbreviati di base Sì Modelli abbreviati come ()->() e ()-().
G045 Modelli di arco abbreviati completi Sì Tasti di scelta rapida per i bordi abbreviati per qualsiasi direzione.
G046 Coerenza topologica rilassata: modelli di vertice adiacenti No
G047 Coerenza topologica rilassata: modelli di bordo concisi No
G048 Modello di percorso tra parentesi: dichiarazione di variabile subpath No
G049 Modello di percorso tra parentesi: prefisso della modalità percorso No
G050 Modello di percorso tra parentesi: WHERE clausola No
G051 Modello di percorso tra parentesi: predicati non locali No
G060 Quantificatori di criteri di grafico delimitati Sì {m,n}, {m}, e {,n} sintassi. Il limite di otto salti del visual query builder non si applica a GQL nell'editor di codice.
G061 Quantificatori di criteri di grafo non associati Parziale {m,}, , e + sono supportati da TRAIL, SIMPLE, e ACYCLIC. * Unbounded ALL WALK viene rifiutato. Unbounded ANY SHORTEST WALK supporta forme specifiche di query.
G074 Espressione etichetta: etichetta con caratteri jolly No I caratteri jolly non sono attualmente supportati.
G080 Espressione di criteri di percorso semplificata: impostazione predefinita di base No
G081 Espressione di criteri di percorso semplificata: override completi No
G082 Espressione di criteri di percorso semplificata: override di base No
G100 Funzione ELEMENT_ID Sì ELEMENT_ID restituisce l'identificatore opaco di un nodo o di un arco come stringa.
G110 predicato IS DIRECTED No
G111 predicato IS LABELED No
G112 IS SOURCEpredicato e IS DESTINATION No
G113 predicato ALL_DIFFERENT No
G114 predicato SAME No
G115 predicato PROPERTY_EXISTS No

GA - Funzionalità generali

ID funzionalità Feature Supportato Notes
GA01 Operazioni a virgola mobile IEEE 754 Sì FLOAT64 usa la rappresentazione binaria IEEE 754 binary64. Vedere tipi numerici approssimativi e codifica del valore dell'API Query.
GA03 Ordinamento esplicito di valori Null Sì Usare NULLS FIRST o NULLS LAST con ORDER BY. Il valore predefinito è NULLS LAST.
GA04 Confronto universale No Graph confronta la maggior parte dei valori di tipi compatibili, ma non supporta ancora tutti i confronti numerici definiti da GQL.
GA05 Specifica del cast Parziale CAST(value AS target_type) è supportato, inclusi cast tra tipi esatti numerici, stringhe e list compatibili. Il cast dei tipi Unicode non è attualmente supportato. Vedere conversioni dei tipi.
GA06 Predicato del tipo di valore Sì Sono supportati predicati di tipo valore.
GA07 Ordinamento in base alle variabili di associazione eliminate No
GA08 Oggetti di stato GQL con record di diagnostica Parziale Sono supportati oggetti di stato, record diagnostici, stati aggiuntivi e catene di causa. L'API Query mappa i valori canonici GQLSTATUS a un insieme più piccolo di codici di stato pubblici e preserva il valore canonico nella diagnostica. Vedi il riferimento ai codici di stato e l'oggetto di stato Query API.
GA09 Confronto dei percorsi Parziale Sono supportate l'uguaglianza dei percorsi e l'uso dei percorsi come chiavi di ordinamento. Altri moduli di confronto dei percorsi non sono attualmente documentati.

GB - Funzionalità lessicali

ID funzionalità Feature Supportato Notes
GB01 Identificatori lunghi No
GB02 Commenti segno doppio meno Sì -- commenti di riga.
GB03 Commenti a tinta unita doppia Sì // commenti di riga e /* */ blocca i commenti.

GC - Funzionalità di gestione del catalogo

ID funzionalità Feature Supportato Notes
GC01 Gestione dello schema del grafo No
GC02 Gestione dello schema del grafo: IF [NOT] EXISTS No
GC03 Tipo di grafo: IF [NOT] EXISTS No
GC04 Gestione dei gragrafi Parziale CREATE GRAPH con un tipo di grafo chiuso è supportato. GQL non supporta DROP GRAPH. Usare invece l'interfaccia utente dell'infrastruttura o l'API REST .
GC05 Gestione dei gra gragrafi: IF [NOT] EXISTS No

GD - Funzionalità di modifica dei dati

ID funzionalità Feature Supportato Notes
GD01 Grafici aggiornabili No Caricare e aggiornare i dati del grafo tramite la gestione dei dati, non tramite istruzioni GQLINSERT/SET/DELETE.
GD02 Modifiche al set di etichette del grafico No
GD03 DELETE statement: supporto per sottoquery No
GD04 DELETE statement: supporto di espressioni semplici No

GE — Funzionalità delle espressioni

ID funzionalità Feature Supportato Notes
GE01 Espressioni del valore di riferimento grafico No
GE02 Espressioni del valore di riferimento della tabella di associazione No
GE03 Associazione di variabili nelle espressioni Sì LET istruzione per l'associazione di variabili.
GE04 Parametri del grafo No
GE05 Binding dei parametri della tabella No
GE06 Costruzione del valore del percorso Sì PATH [node, edge, node] costruttore per i valori del percorso di compilazione.
GE07 Booleano XOR Sì Disgiunzione esclusiva con XOR operatore.
GE08 Parametri di riferimento No
GE09 Aggregazione orizzontale Sì Aggregazione orizzontale sulle variabili di elenco di gruppi da modelli a lunghezza variabile.

GF - Funzionalità delle funzioni

ID funzionalità Feature Supportato Notes
GF01 Funzioni numeriche avanzate Parziale ABS e POWER sono supportati. MOD FLOOR, CEIL, CEILING, e SQRT non sono attualmente supportati.
GF02 Funzioni trigonometriche Sì , , , , , , ACOS, ATANCOSHDEGREESSINHTANHe RADIANSsono sostenuti. ASINCOTTANCOSSIN
GF03 Funzioni logaritmiche No
GF04 Funzioni di percorso avanzate Sì elements(path)Sono supportati , path_length(path)nodes(path), e edges(path) .
GF05 Funzione a più caratteri TRIM No Un valore di trim personalizzato deve essere esattamente di un byte.
GF06 Funzione esplicita TRIM Sì BOTH, LEADING, e TRAILING le specifiche di allestimento sono supportate.
GF07 Funzione stringa TRIM byte No I tipi di stringa di byte non sono supportati.
GF10 Funzioni di aggregazione avanzate: funzioni di set generali Parziale COLLECT_LIST, COLLECT_ONE, e COLLECT_ELEMENTS sono supportati. STDDEV_POP, STDDEV_SAMPe PRODUCT non sono attualmente supportati.
GF11 Funzioni di aggregazione avanzate: funzioni di set binario No percentile_cont e percentile_disc non sono attualmente supportati.
GF12 Funzione CARDINALITY No Utilizzare invece size(list).
GF13 Funzione SIZE Sì size(list) restituisce il numero di elementi in un elenco.
GF20 Funzioni di aggregazione nelle chiavi di ordinamento No

Le estensioni di stringhe specifiche per grafo includono CASEFOLD, STRING_JOIN, e le MSFT.REGEXP_* funzioni. Il predicato standard REGEXP_CONTAINS non è supportato.

GG - Funzionalità dei tipi di grafo

ID funzionalità Feature Supportato Notes
GG01 Grafico con un tipo di grafo aperto No Sono supportati solo i tipi di gragrafi chiusi.
GG02 Grafico con un tipo di grafo chiuso Sì Valore predefinito. I tipi di grafo definiscono i tipi di nodi e bordi consentiti. Vedere Tipi di grafo GQL.
GG03 Specifica inline del tipo grafico Sì I tipi di nodo e di arco vengono specificati inline nella definizione del tipo di grafo.
GG04 Tipo di grafo come un grafo No
GG05 Grafico da un'origine del grafo No
GG20 Nomi espliciti dei tipi di elemento Sì Le etichette fungono da nomi dei tipi di elemento.
GG21 Set di etichette chiave del tipo di elemento esplicito No
GG22 Inferenza del set di etichette chiave del tipo di elemento No
GG23 Set di etichette chiave del tipo di elemento facoltativo Sì Il set di etichette chiave è il nome del tipo di elemento.
GG24 Coerenza strutturale rilassata No
GG25 Univocità dei set di etichette delle chiavi per i tipi di arco No
GG26 Coerenza del tipo di valore della proprietà rilassata No

GL — Funzionalità letterali

ID funzionalità Feature Supportato Notes
GL01 Valori letterali esadecimali No
GL02 Valori letterali ottali No
GL03 Valori letterali binari No
GL04 Numero esatto nella notazione comune senza suffisso Sì Valori letterali integer come 123456. Vedere tipi numerici esatti.
GL05 Numero esatto con suffisso Sì Letterali interi con suffissi di tipo come 123m.
GL06 Numero esatto nella notazione scientifica con suffisso Sì Ad esempio: 1.25e2m.
GL07 Numero approssimativo nella notazione comune con suffisso Parziale Sono supportati i d suffissi e D e che sono supportati. I f suffissi e F non sono attualmente supportati. Vedere tipi numerici approssimativi.
GL08 Numero approssimativo nella notazione scientifica con suffisso Parziale La notazione scientifica con d o D è supportata. I f suffissi e F non sono attualmente supportati.
GL09 Suffisso numerico float facoltativo No
GL10 Suffisso numerico doppio facoltativo No
GL11 Rifiutare esplicitamente l'escape dei caratteri No
GL12 Formati datetime SQL Sì Formato ISO 8601 tramite ZONED_DATETIME('...'). Vedere valori datetime con zone.

Criteri di gruppo - Funzionalità delle procedure

Le chiamate di procedura inline GP01 sono parzialmente supportate tramite CALL { ... } e OPTIONAL CALL { ... }. Le sottoquery inline importano implicitamente variabili da scope racchiudenti e possono contenere istruzioni annidate CALL . Le liste esplicite di importazione di variabili come CALL (p) { ... } quelle non sono supportate. Le chiamate di procedure nominate e altre funzionalità di procedura (GP02–GP18) non sono attualmente supportate.

GQ - Funzionalità di composizione delle query

ID funzionalità Feature Supportato Notes
GQ01 USE clausola graph No
GQ02 Query composita: OTHERWISE No
GQ03 Query composita: UNION Sì Svela UNION e UNION DISTINCT rimuovi le righe duplicate. UNION ALL li preserva.
GQ04 Query composita: EXCEPT DISTINCT No
GQ05 Query composita: EXCEPT ALL No
GQ06 Query composita: INTERSECT DISTINCT No
GQ07 Query composita: INTERSECT ALL No
GQ08 FILTER istruzione Sì FILTER parola chiave with WHERE .
GQ09 LET istruzione Sì LET per le variabili calcolate.
GQ10 FOR statement: supporto dei valori di elenco Sì L'istruzione FOR espande i valori della lista in righe.
GQ11 FOR affermazione: WITH ORDINALITY Sì WITH ORDINALITY offre una posizione a base unica.
GQ12 ORDER BY istruzione e page: OFFSET clausola Sì OFFSET (alias anche come SKIP).
GQ13 ORDER BY istruzione e page: LIMIT clausola Sì LIMIT.
GQ14 Espressioni complesse nelle chiavi di ordinamento Sì ORDER BY accetta espressioni, incluse chiamate di funzione e valori calcolati.
GQ15 clausola GROUP BY Sì RETURN con GROUP BY.
GQ16 Alias di preproiezione nelle chiavi di ordinamento No
GQ17 Operazioni delle variabili di gruppo per elementi Sì Supportato tramite l'aggregazione orizzontale.
GQ18 Sottoquery scalari No Le sottoquery scalari non sono attualmente supportate.
GQ19 Clausola del criterio YIELD di grafo No
GQ20 Composizione lineare avanzata con NEXT Sì NEXT inizia un'altra fase di query dalle colonne restituite dalla fase precedente. Ogni stadio può contenere un'unione di blocchi di interrogazione.
GQ21 OPTIONAL: più MATCH istruzioni Sì OPTIONAL MATCH è supportato.
GQ22 EXISTS predicato: più MATCH istruzioni Sì Le sottoquery procedura-form EXISTS supportano più MATCH istruzioni nel corpo della sottoquery.
GQ23 FOR statement: supporto delle tabelle di associazione No
GQ24 FOR affermazione: WITH OFFSET Sì WITH OFFSET fornisce un indice basato su zero.

GS - Funzionalità di gestione delle sessioni

Le funzionalità di gestione delle sessioni GQL (GS01–GS16) non sono attualmente supportate.

GT — Funzionalità di gestione delle transazioni

Le funzionalità di gestione delle transazioni GQL (GT01-GT03) non sono attualmente supportate.

GV - Funzionalità del tipo di valore

ID funzionalità Feature Supportato Notes
GV01 Numeri interi senza segno a 8 bit No
GV02 Numeri interi con segno a 8 bit No
GV03 Numeri interi senza segno a 16 bit No
GV04 Numeri interi con segno a 16 bit No
GV05 Numeri interi senza segno di piccole dimensioni No
GV06 Numeri interi senza segno a 32 bit No
GV07 Numeri interi con segno a 32 bit No INT32 non è supportato come tipo di valore GQL.
GV08 Numeri interi senza segno regolari Sì UINT digitare.
GV09 Precisione numero intero specificata No
GV10 Numeri interi senza segno di grandi dimensioni No
GV11 Numeri interi senza segno a 64 bit Sì UINT64.
GV12 Numeri interi con segno a 64 bit Sì INT64.
GV13 Numeri interi senza segno a 128 bit No
GV14 Numeri interi con segno a 128 bit No
GV15 Numeri interi senza segno a 256 bit No
GV16 Numeri interi con segno a 256 bit No
GV18 Numeri interi con segno di piccole dimensioni No
GV19 Numeri interi con segno grande No
GV20 Numeri a virgola mobile a 16 bit No
GV21 Numeri a virgola mobile a 32 bit No FLOAT negli alias FLOAT64 del grafo (64 bit), non FLOAT32in . Vedere tipi numerici approssimativi.
GV22 Precisione del numero a virgola mobile specificata No
GV23 Sinonimi dei nomi dei tipi a virgola mobile Sì DOUBLE, FLOATe FLOAT64 specificano tutti lo stesso tipo.
GV24 Numeri a virgola mobile a 64 bit Sì DOUBLE / FLOAT64.
GV25 Numeri a virgola mobile a 128 bit No
GV26 Numeri a virgola mobile a 256 bit No
GV30 Lunghezza minima della stringa di caratteri specificata No
GV31 Lunghezza massima della stringa di caratteri specificata Sì STRING digitare.
GV32 Lunghezza fissa della stringa di caratteri specificata No
GV35 Tipi di stringa di byte No
GV36 Lunghezza minima stringa byte specificata No
GV37 Lunghezza massima stringa byte specificata No
GV38 Lunghezza fissa della stringa di byte specificata No
GV39 Tipi temporali: date, datetime locale e ora locale No DATE, LOCAL DATETIME e LOCAL TIME non sono supportate. È supportato solo ZONED DATETIME.
GV40 Tipi temporali: data/ora con zone e fuso orario Parziale ZONED DATETIME è supportato. ZONED TIME non è attualmente supportato.
GV41 Tipi temporali: durata Sì Il tipo di durata è supportato.
GV45 Tipi di record Sì La sintassi del costruttore di record è supportata.
GV46 Tipi di record chiusi No
GV47 Tipi di record aperti Sì Sono supportati i tipi di record aperti.
GV48 Tipi di record annidati No
GV50 Elencare i tipi di valore Sì LIST<element_type>. Sono supportati i tipi di elenco annidati (LIST<LIST<type>>). Gli elenchi non possono contenere tipi misti.
GV55 Tipi valore percorso Sì PATH tipo per i percorsi corrispondenti.
GV60 Tipi di valore di riferimento del grafico No
GV61 Tipi di valori di riferimento della tabella di associazione No
GV65 Tipi di unione dinamica No
GV66 Tipi di unione dinamica aperti Sì ANY il tipo di valore è supportato.
GV67 Tipi di unione dinamica chiusi No
GV68 Tipi di valore della proprietà dinamica No
GV70 Tipi di valore irrilevante Sì NULL e NOTHING tipi.
GV71 Tipi di valore irrilevante: tipo Null Sì NULL è un membro di ogni tipo di valore nullable.
GV72 Tipi di valore irrilevanti: tipo vuoto Sì NOTHING / NULL NOT NULL.
GV90 Nullbility per il tipo di valore esplicito Sì NOT NULL la sintassi è supportata per tutti i tipi.

GH — Altre funzionalità

ID funzionalità Feature Supportato Notes
GH01 Riferimenti a oggetti esterni No
GH02 Modelli di arco non diretti No Il grafico richiede bordi diretti. I modelli diretti (-[]-) corrispondono in base alla connettività indipendentemente dalla direzione.

Funzionalità non ancora supportate

Le funzionalità rilevanti seguenti non sono attualmente supportate. Per l'elenco completo, vedere qualsiasi riga contrassegnata come No nelle tabelle.

  • SELECT statement (Subclause 14.12) - usare RETURN invece
  • ALL SHORTEST, ANY, e le ricerche di percorso contate (G016–G017 e G019–G020)
  • Sottoquery scalari (GQ18)
  • Sottoquery solo EXISTS per pattern di grafo (sottoclausola 19.4)
  • Funzioni soffitto, pavimento, logaritmica, modulo, esponenziale e radice quadrata (GF01 e GF03)
  • EXCEPT istruzioni e INTERSECT (GQ04-GQ07)
  • OTHERWISE Enunciato (GQ02)
  • Istruzioni GQL INSERT/SET/DELETE(GD01): usare invece la gestione dei dati
  • Gestione delle sessioni e comandi delle transazioni (sottoclause 7-8)