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. Hvis du vil ha mer informasjon, kan du se Supplerende vilkår for bruk 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 å velge 'Code editor'.

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. 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. Samsvarer med mønsteret Kunde → kjøp → Bestilling → inneholder → Produkt
  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.subCategoryName = 'Touring Bikes'
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 'Touring Bikes'.
  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 'Touring Bikes', sammen med hvor mange produkter de leverer og hvor mange bestillinger disse produktene har.

Skjermbilde som viser resultatet av å kjøre en GQL-søk for å finne de fem beste leverandørene som leverer produkter i kategorien 'Touring Bikes'.

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

Neste trinn