All stores are Neo4j 2.1.3.
What is related, and how?
Flight	ORIGIN        Airport
Flight	DESTINATION   Airport
Flight	CARRIER       Carrier
Flight	AIRCRAFT      Aircraft
Flight	DELAYED_BY    Reason
Flight	CANCELLED_BY  Reason
Airport	IN_CITY	      City
City    IN_STATE      State
Flight	DIVERTED_TO   Airport
Which cities have more than 1 airport?
Query
MATCH (:Airport)-[:IN_CITY]->(c:City)
WITH c, COUNT(*) AS Count
WHERE Count > 1
RETURN c.name AS City, Count
ORDER BY Count
Result
| City | Count | 
|---|---|
| WASHINGTON, DC | 2 | 
| HOUSTON, TX | 2 | 
| NEW YORK, NY | 2 | 
| CHICAGO, IL | 2 | 
Which cities have more than 1 airport, and what are they?
Query
MATCH (a:Airport)-[:IN_CITY]->(c:City)
WITH c.name AS City, COLLECT(a.name) AS Airports
WHERE LENGTH(Airports) > 1
RETURN City, Airports
ORDER BY LENGTH(Airports)
Result
| City | Airports | 
|---|---|
| HOUSTON, TX | GEORGE BUSH INTERCONTINENTAL/HOUSTON, WILLIAM P HOBBY | 
| WASHINGTON, DC | RONALD REAGAN WASHINGTON NATIONAL, WASHINGTON DULLES INTERNATIONAL | 
| NEW YORK, NY | JOHN F. KENNEDY INTERNATIONAL, LAGUARDIA | 
| CHICAGO, IL | CHICAGO O'HARE INTERNATIONAL, CHICAGO MIDWAY INTERNATIONAL | 
Of the flights that departed from SFO and were diverted, what are the top airports that they were diverted to?
Query
MATCH (f:Flight)-[:ORIGIN]->(:Airport {abbr:'SFO'}),
      (f)-[d:DIVERTED_TO]->(a:Airport)
WHERE d.step = 1
RETURN a.abbr + ' - ' + a.name AS Airport, COUNT(*) AS Count
ORDER BY Count DESC
LIMIT 10
Result
| Airport | Count | 
|---|---|
| SFO - SAN FRANCISCO INTERNATIONAL | 13 | 
| TWF - JOSLIN FIELD - MAGIC VALLEY REGIONAL | 6 | 
| RDM - ROBERTS FIELD | 5 | 
| GJT - GRAND JUNCTION REGIONAL | 3 | 
| RDD - REDDING MUNICIPAL | 3 | 
| EUG - MAHLON SWEET FIELD | 2 | 
| DTW - DETROIT METRO WAYNE COUNTY | 2 | 
| LAX - LOS ANGELES INTERNATIONAL | 2 | 
| BOS - LOGAN INTERNATIONAL | 2 | 
| LMT - KLAMATH FALLS AIRPORT | 2 | 
What is related, and how?
Airline   BASED_IN  Country
Series    MODEL     Model
Aircraft  SERIES    Series
Aircraft  OWNED_BY  Airline
Which airlines own the most active Boeing 747s? How many do they own? In which countries are these airlines based?
Query
MATCH (a:Airline)-[:BASED_IN]->(c:Country),
      (craft:Aircraft)-[:OWNED_BY]->(a),
      (craft)-[:SERIES]->(:Series)-[:MODEL]->(m:Model)
WHERE craft.status = 'Active' AND m.name = 'Boeing 747'
WITH a, COUNT(m) AS count, c
ORDER BY count DESC
RETURN a.name AS Airline, c.name AS Country, count AS `Number of Boeing 747 Owned`
LIMIT 10
Result
| Airline | Country | Number of Boeing 747 Owned | 
|---|---|---|
| British Airways | United Kingdom | 48 | 
| Korean Air | South Korea | 36 | 
| Cathay Pacific | Hong-Kong | 33 | 
| Lufthansa | Germany | 32 | 
| China Airlines | Taiwan | 31 | 
| KLM | Netherlands | 26 | 
| United Airlines | USA | 24 | 
| Atlas Air | USA | 22 | 
| Transaero Airlines | Russia | 20 | 
| Cargolux | Luxembourg | 19 | 
Which Embraer models have the most series of planes? What are they?
Query
MATCH (s:Series)-[:MODEL]->(m:Model)
WHERE m.name =~ 'Embraer.*'
WITH m.name AS Model, COLLECT(s.name) AS Series
RETURN Model, Series
ORDER BY LENGTH(Series) DESC
Result
| Model | Series | 
|---|---|
| Embraer 135/145 | 145SM, 145RS, 145EW, 145MP, 145BJ, 135ER, 135EJ, 135LR, 135, 145MR, 145LI, 145XR, 145ER, 145EP, 145LR, 145LU, 145SA, 135BK, 145EU, 145EJ, 135BJ, 140LR | 
| Embraer 190/195 | 195STD, 190SLR, 190ECJ, 190BJ, 195LR, 190IGW, 195AR, 195SR, 190ER, 190, 195IGW, 190AR, 190LR, 190STD, 190SR | 
| Embraer 170/175 | 175SR, 175SU, 170SL, 170SE, 170STD, 175SD, 175LR, 170LR, 170SU, 175STD, 170ST, 175IGW, 170AR, 170SR | 
| Embraer 120 Brasilia | 120ER, 120QC, 120, 120RT | 
What is related, and how?
Gate   IN_TERMINAL  Terminal
Place  IN_CATEGORY  Category
Place  AT_GATE      Gate
At which gates in terminal A can I find a Starbucks?
Query
MATCH (p:Place)-[:AT_GATE]->(g:Gate),
      (g)-[:IN_TERMINAL]->(t:Terminal)
WHERE p.name = 'Starbucks Coffee' AND t.name = 'A'
RETURN g.gate AS Gate, t.name AS Terminal
ORDER BY Gate
Result
| Gate | Terminal | 
|---|---|
| 29 | A | 
| 33 | A | 
| 37 | A | 
Where are places in terminal D in categories 'Bar' or 'Barbecue'?
Query
MATCH (p:Place)-[:IN_CATEGORY]->(c:Category)
WHERE c.name IN ['Bar', 'Barbecue']
WITH p
MATCH (p)-[:AT_GATE]->(g:Gate),
      (g)-[:IN_TERMINAL]->(t:Terminal)
WHERE t.name = 'D'
RETURN p.name AS Place, g.gate AS Gate
ORDER BY Gate
Result
| Place | Gate | 
|---|---|
| Railhead BBQ | 18 | 
| Tigin Irish Pub & Restaurant | 20 | 
| Cousin's Bar-B-Q | 28 | 
| Gas Monkey Bar & Grill | 31 | 
What is related, and how?
Stop  IN        Zone
Stop  NEXT      Stop
Train STOPS_AT  Stop
Which consecutive stops are furthest apart?
Query
MATCH (s1:Stop)-[r:NEXT]->(s2:Stop)
WITH s1, s2, r.distance AS Distance
ORDER BY Distance DESC
LIMIT 1
RETURN s1.name AS Stop1, s2.name AS Stop2, Distance
Result
| Stop1 | Stop2 | Distance | 
|---|---|---|
| BLOSSOM HILL | MORGAN HILL | 11.8 | 
Which trains can I take home to San Mateo from San Francisco after the hackathon tonight?
Query
MATCH (t:Train)
WHERE t.direction = 'Southbound' AND t.type = 'Weekday'
WITH t
MATCH (t)-[leave:STOPS_AT]->(begin:Stop),
      (t)-[:STOPS_AT]->(end:Stop)
WHERE begin.name = 'SAN FRANCISCO' AND
      end.name = 'SAN MATEO'
WITH t, leave.hour*100 + leave.minute AS minutes, leave.hour_s AS Hour, leave.minute_s AS Minute
WHERE minutes > 2100 OR minutes < 100
RETURN t.id AS Train, Hour + ':' + Minute AS `Departure Time`
Result
| Train | Departure Time | 
|---|---|
| 194 | 21:40 | 
| 196 | 22:40 | 
| 198 | 00:01 | 
What is related, and how?
Scrobble  PLAYED     Track
Scrobble  NEXT       Scrobble
User      SCROBBLED  Scrobble
Artist    MEMBER_OF  Genre
Track     SUNG_BY    Artist
Which artists do users 'nmwhite0131' and 'smooligans' mutually listen to most often?
Query
MATCH (u1:User {username:'nmwhite0131'}), (u2:User {username:'smooligans'})
WITH u1, u2
MATCH (u1)-[:SCROBBLED]->(:Scrobble)-[:PLAYED]->(:Track)-[:SUNG_BY]->(a:Artist),
      (u2)-[:SCROBBLED]->(:Scrobble)-[:PLAYED]->(:Track)-[:SUNG_BY]->(a)
RETURN a.name AS Artist, COUNT(*) AS Count
ORDER BY Count DESC
LIMIT 10
Result
| Artist | Count | 
|---|---|
| Drake | 15019 | 
| Beyoncé | 6869 | 
| Lana Del Rey | 3723 | 
| Jay-Z | 2967 | 
| Nicki Minaj | 2624 | 
| Lil' Wayne | 2242 | 
| Rihanna | 1911 | 
| Daft Punk | 1560 | 
| Explosions in the Sky | 1165 | 
| Tyga | 663 | 
User nmwhite0131's last five scrobbles.
Query
MATCH (:User {username:'nmwhite0131'})-[:SCROBBLED]->(last:Scrobble),
      recent = (:Scrobble)-[:NEXT*4]->(last)
WHERE NOT ((last)-[:NEXT]->(:Scrobble))
WITH NODES(recent) AS scrobbles
UNWIND scrobbles AS s
MATCH (s)-[:PLAYED]->(t:Track)-[:SUNG_BY]->(a:Artist)
RETURN s.date AS Date, t.name AS Track, a.name AS Artist
Result
| Date | Track | Artist | 
|---|---|---|
| 2014-09-24 | Easy | Saycet | 
| 2014-09-24 | Bruyère | Saycet | 
| 2014-09-24 | Opal | Saycet | 
| 2014-09-24 | Her Movie | Saycet | 
| 2014-09-24 | We Walk Fast | Saycet | 
What is related, and how?
Tweet    USING     Source
Tweet    CONTAINS  Link
Tweet    MENTIONS  User
Tweet    RETWEETS  Tweet
User     POSTS     Tweet
Tweet    REPLY_TO  Tweet
Hashtag  TAGS      Tweet
How are hashtags 'java' and 'graph' related?
Query
MATCH (java:Hashtag {name:'java'}), (graph:Hashtag {name:'graph'})
WITH java, graph
MATCH p = shortestPath((java)-[:TAGS*]-(graph))
RETURN p
Result
What is the most retweeted tweet, who posted it, and what did it say?
Query
MATCH (:Tweet)-[:RETWEETS]->(t:Tweet)
WITH t, COUNT(*) AS count
ORDER BY count DESC
LIMIT 1
MATCH (u:User)-[:POSTS]->(t)
RETURN u.screen_name AS User, t.text AS Tweet, count AS Retweets
Result
| User | Tweet | Retweets | 
|---|---|---|
| println_ts | A twist on how to do login & registration form on #Neo4J's website. #ux #ui http://t.co/CmDIfkSDT3 http://t.co/fjtSik59Qa | 5 | 
