Del via


Veiledning: Søk i grafen ved å bruke GQL

Note

Denne funksjonen er for øyeblikket i offentlig forhåndsversjon. Denne forhåndsvisningen leveres uten en tjenesteavtale, og anbefales ikke for produksjonsarbeidsbelastninger. Enkelte funksjoner støttes kanskje ikke eller kan ha begrensede funksjoner. For mer informasjon, se Supplemental Terms of Use for Microsoft Azure Previews.

I dette opplæringssteget spør du grafen din ved å bruke GQL (Graph Query Language) i kodeeditoren. GQL gir kraftige spørringsmuligheter for komplekse grafmønstre og analyser.

Bytt til kodeeditor-modus

Følg disse stegene for å bytte til kodeeditoren og begynn å spørre grafen din ved å bruke GQL:

  1. Gå til grafens hjemmeside.

  2. Velg kodeeditor fra toppmenyen.

    Skjermbilde som viser resultatet av valg av koderedigerer.

Kjør en enkel spørring

  1. Skriv inn en GQL-spørring i inndatafeltet. For eksempel, tell alle ordre:

    MATCH (n:`Order`) RETURN count(n) AS num_orders
    
  2. Velg Kjør spørring for å kjøre spørringen.

Denne spørringen finner alle noder med etiketten Order , teller dem, og returnerer totalen som num_orders. Det er en enkel måte å bekrefte at grafen din har data og at tellingen stemmer overens med antall ordrerader du lastet inn. Følgende bilde viser resultatet av spørringen:

Skjermbilde som viser resultatet av å kjøre en GQL-spørring for å telle alle ordre.

Gjenskap spørringsbygger-spørringen i GQL

I forrige opplæringssteg brukte du spørringsbyggeren for å finne hvilke produkter en spesifikk kunde hadde kjøpt. Her er det samme spørsmålet skrevet i GQL:

MATCH (c:Customer)-[:purchases]->(o:`Order`)-[:`contains`]->(p:`Product`)
FILTER c.fullName = 'Carla Adams'
RETURN c.fullName, o, p.productName

Denne spørringen:

  1. Matcher mønsteret CustomerpurchasesOrdercontainsProduct
  2. Filtre for kunden ved navn "Carla Adams"
  3. Returnerer kundens fulle navn, ordredetaljer og produktnavn

Følgende bilde viser resultatet av spørringen (kun en del av de returnerte dataene vises).

Skjermbilde som viser resultatet av å kjøre en GQL-søk for å finne produkter kjøpt av Carla Adams.

Kjør en kompleks spørring

Du kan kjøre mer komplekse spørringer som kombinerer matchende grafmønstre, filtrering, aggregering, sortering og begrensning:

MATCH (v:Vendor)-[:produces]->(p:`Product`)->(sc:`ProductSubcategory`)->(c:`ProductCategory`), 
      (o:`Order`)-[:`contains`]->(p)
FILTER c.categoryName = 'Clothing'
LET vendorName = v.vendorName, subCategoryName = sc.subCategoryName
RETURN vendorName, subCategoryName, count(DISTINCT p) AS num_products, count(o) AS num_orders
GROUP BY vendorName, subCategoryName
ORDER BY num_orders DESC
LIMIT 5

Denne spørringen:

  1. Matcher et mønster som kobler leverandører til produkter gjennom forsyningskjeden, og ordre til produkter.
  2. Filtre for produkter i kategorien Clothing .
  3. Definerer variabler for leverandør- og underkategorinavn.
  4. Returnerer leverandørnavn, underkategorinavn, distinkt produktantall og ordreantall.
  5. Grupperer resultater etter leverandør og underkategori.
  6. Ordreresultater etter ordretall i synkende rekkefølge.
  7. Begrenser resultatene til topp 5.

Oppsummert viser den de fem største leverandørene som leverer produkter i kategorien Clothing , sammen med hvor mange produkter de leverer og hvor mange bestillinger produktene har.

Skjermbilde som viser resultatet av å kjøre en GQL-spørring for å finne de fem største leverandørene som leverer produkter i kleskategorien.

For mer informasjon om GQL-språkstøtte, se:

Neste trinn