Load product catalog
Load the product catalog data from external CSV files
Northwind sells food products in a few categories provided by suppliers. Let's start by loading the product catalog tables.
Load product data.
products.csv:
productID,productName,supplierID,categoryID,quantityPerUnit,unitPrice,unitsInStock,unitsOnOrder,reorderLevel,discontinued 1,Chai,1,1,10 boxes x 20 bags,18.00,39,0,10,0 2,Chang,1,1,24 - 12 oz bottles,19.00,17,40,25,0 3,Aniseed Syrup,1,2,12 - 550 ml bottles,10.00,13,70,25,0 4,Chef Anton's Cajun Seasoning,2,2,48 - 6 oz jars,22.00,53,0,0,0 5,Chef Anton's Gumbo Mix,2,2,36 boxes,21.35,0,0,0,1 6,Grandma's Boysenberry Spread,3,2,12 - 8 oz jars,25.00,120,0,25,0 7,Uncle Bob's Organic Dried Pears,3,7,12 - 1 lb pkgs.,30.00,15,0,10,0 8,Northwoods Cranberry Sauce,3,2,12 - 12 oz jars,40.00,6,0,0,0 9,Mishi Kobe Niku,4,6,18 - 500 g pkgs.,97.00,29,0,0,1 10,Ikura,4,8,12 - 200 ml jars,31.00,31,0,0,0 11,Queso Cabrales,5,4,1 kg pkg.,21.00,22,30,30,0 12,Queso Manchego La Pastora,5,4,10 - 500 g pkgs.,38.00,86,0,0,0 13,Konbu,6,8,2 kg box,6.00,24,0,5,0 14,Tofu,6,7,40 - 100 g pkgs.,23.25,35,0,0,0 15,Genen Shouyu,6,2,24 - 250 ml bottles,15.50,39,0,5,0 16,Pavlova,7,3,32 - 500 g boxes,17.45,29,0,10,0 17,Alice Mutton,7,6,20 - 1 kg tins,39.00,0,0,0,1 18,Carnarvon Tigers,7,8,16 kg pkg.,62.50,42,0,0,0 19,Teatime Chocolate Biscuits,8,3,10 boxes x 12 pieces,9.20,25,0,5,0 20,Sir Rodney's Marmalade,8,3,30 gift boxes,81.00,40,0,0,0 21,Sir Rodney's Scones,8,3,24 pkgs. x 4 pieces,10.00,3,40,5,0 22,Gustaf's Knäckebröd,9,5,24 - 500 g pkgs.,21.00,104,0,25,0 23,Tunnbröd,9,5,12 - 250 g pkgs.,9.00,61,0,25,0 24,Guaraná Fantástica,10,1,12 - 355 ml cans,4.50,20,0,0,1 25,NuNuCa Nuß-Nougat-Creme,11,3,20 - 450 g glasses,14.00,76,0,30,0 26,Gumbär Gummibärchen,11,3,100 - 250 g bags,31.23,15,0,0,0 27,Schoggi Schokolade,11,3,100 - 100 g pieces,43.90,49,0,30,0 28,Rössle Sauerkraut,12,7,25 - 825 g cans,45.60,26,0,0,1 29,Thüringer Rostbratwurst,12,6,50 bags x 30 sausgs.,123.79,0,0,0,1 30,Nord-Ost Matjeshering,13,8,10 - 200 g glasses,25.89,10,0,15,0 31,Gorgonzola Telino,14,4,12 - 100 g pkgs,12.50,0,70,20,0 32,Mascarpone Fabioli,14,4,24 - 200 g pkgs.,32.00,9,40,25,0 33,Geitost,15,4,500 g,2.50,112,0,20,0 34,Sasquatch Ale,16,1,24 - 12 oz bottles,14.00,111,0,15,0 35,Steeleye Stout,16,1,24 - 12 oz bottles,18.00,20,0,15,0 36,Inlagd Sill,17,8,24 - 250 g jars,19.00,112,0,20,0 37,Gravad lax,17,8,12 - 500 g pkgs.,26.00,11,50,25,0 38,Côte de Blaye,18,1,12 - 75 cl bottles,263.50,17,0,15,0 39,Chartreuse verte,18,1,750 cc per bottle,18.00,69,0,5,0 40,Boston Crab Meat,19,8,24 - 4 oz tins,18.40,123,0,30,0 41,Jack's New England Clam Chowder,19,8,12 - 12 oz cans,9.65,85,0,10,0 42,Singaporean Hokkien Fried Mee,20,5,32 - 1 kg pkgs.,14.00,26,0,0,1 43,Ipoh Coffee,20,1,16 - 500 g tins,46.00,17,10,25,0 44,Gula Malacca,20,2,20 - 2 kg bags,19.45,27,0,15,0 45,Rogede sild,21,8,1k pkg.,9.50,5,70,15,0 46,Spegesild,21,8,4 - 450 g glasses,12.00,95,0,0,0 47,Zaanse koeken,22,3,10 - 4 oz boxes,9.50,36,0,0,0 48,Chocolade,22,3,10 pkgs.,12.75,15,70,25,0 49,Maxilaku,23,3,24 - 50 g pkgs.,20.00,10,60,15,0 50,Valkoinen suklaa,23,3,12 - 100 g bars,16.25,65,0,30,0 51,Manjimup Dried Apples,24,7,50 - 300 g pkgs.,53.00,20,0,10,0 52,Filo Mix,24,5,16 - 2 kg boxes,7.00,38,0,25,0 53,Perth Pasties,24,6,48 pieces,32.80,0,0,0,1 54,Tourtière,25,6,16 pies,7.45,21,0,10,0 55,Pâté chinois,25,6,24 boxes x 2 pies,24.00,115,0,20,0 56,Gnocchi di nonna Alice,26,5,24 - 250 g pkgs.,38.00,21,10,30,0 57,Ravioli Angelo,26,5,24 - 250 g pkgs.,19.50,36,0,20,0 58,Escargots de Bourgogne,27,8,24 pieces,13.25,62,0,20,0 59,Raclette Courdavault,28,4,5 kg pkg.,55.00,79,0,0,0 60,Camembert Pierrot,28,4,15 - 300 g rounds,34.00,19,0,0,0 61,Sirop d'érable,29,2,24 - 500 ml bottles,28.50,113,0,25,0 62,Tarte au sucre,29,3,48 pies,49.30,17,0,0,0 63,Vegie-spread,7,2,15 - 625 g jars,43.90,24,0,5,0 64,Wimmers gute Semmelknödel,12,5,20 bags x 4 pieces,33.25,22,80,30,0 65,Louisiana Fiery Hot Pepper Sauce,2,2,32 - 8 oz bottles,21.05,76,0,0,0 66,Louisiana Hot Spiced Okra,2,2,24 - 8 oz jars,17.00,4,100,20,0 67,Laughing Lumberjack Lager,16,1,24 - 12 oz bottles,14.00,52,0,10,0 68,Scottish Longbreads,8,3,10 boxes x 8 pieces,12.50,6,10,15,0 69,Gudbrandsdalsost,15,4,10 kg pkg.,36.00,26,0,15,0 70,Outback Lager,7,1,24 - 355 ml bottles,15.00,15,10,30,0 71,Flotemysost,15,4,10 - 500 g pkgs.,21.50,26,0,0,0 72,Mozzarella di Giovanni,14,4,24 - 200 g pkgs.,34.80,14,0,0,0 73,Röd Kaviar,17,8,24 - 150 g jars,15.00,101,0,5,0 74,Longlife Tofu,4,7,5 kg pkg.,10.00,4,20,5,0 75,Rhönbräu Klosterbier,12,1,24 - 0.5 l bottles,7.75,125,0,25,0 76,Lakkalikööri,23,1,500 ml,18.00,57,0,20,0 77,Original Frankfurter grüne Soße,12,2,12 boxes,13.00,32,0,15,0
LOAD CSV WITH HEADERS FROM "https://data.neo4j.com/northwind/products.csv" AS row CREATE (n:Product) SET n = row, n.unitPrice = toFloat(row.unitPrice), n.unitsInStock = toInteger(row.unitsInStock), n.unitsOnOrder = toInteger(row.unitsOnOrder), n.reorderLevel = toInteger(row.reorderLevel), n.discontinued = (row.discontinued <> "0");
Load category data.
categories.csv:
categoryID,categoryName,description,picture 1,Beverages,"Soft drinks, coffees, teas, beers, and ales",0x151C2F00020000000D000E0014002100FFFFFFFF4269746D617020496D616765005061696E742E5069637475726500010500000200000007000000504272757368000000000000000000A0290000424D98290000000000005600000028000000AC00000078000000010004000000000000000000880B0000880B0000080000 2,Condiments,"Sweet and savory sauces, relishes, spreads, and seasonings",0x151C2F00020000000D000E0014002100FFFFFFFF4269746D617020496D616765005061696E742E5069637475726500010500000200000007000000504272757368000000000000000000A0290000424D98290000000000005600000028000000AC00000078000000010004000000000000000000880B0000880B0000080000 3,Confections,"Desserts, candies, and sweet breads",0x151C2F00020000000D000E0014002100FFFFFFFF4269746D617020496D616765005061696E742E5069637475726500010500000200000007000000504272757368000000000000000000A0290000424D98290000000000005600000028000000AC00000078000000010004000000000000000000880B0000880B0000080000 4,Dairy Products,"Cheeses",0x151C2F00020000000D000E0014002100FFFFFFFF4269746D617020496D616765005061696E742E5069637475726500010500000200000007000000504272757368000000000000000000A0290000424D98290000000000005600000028000000AC00000078000000010004000000000000000000880B0000880B0000080000 5,Grains/Cereals,"Breads, crackers, pasta, and cereal",0x151C2F00020000000D000E0014002100FFFFFFFF4269746D617020496D616765005061696E742E5069637475726500010500000200000007000000504272757368000000000000000000A0290000424D98290000000000005600000028000000AC00000078000000010004000000000000000000880B0000880B0000080000 6,Meat/Poultry,"Prepared meats",0x151C2F00020000000D000E0014002100FFFFFFFF4269746D617020496D616765005061696E742E5069637475726500010500000200000007000000504272757368000000000000000000A0290000424D98290000000000005600000028000000AC00000078000000010004000000000000000000880B0000880B0000080000 7,Produce,"Dried fruit and bean curd",0x151C2F00020000000D000E0014002100FFFFFFFF4269746D617020496D616765005061696E742E5069637475726500010500000200000007000000504272757368000000000000000000A0290000424D98290000000000005600000028000000AC00000078000000010004000000000000000000880B0000880B0000080000 8,Seafood,"Seaweed and fish",0x151C2F00020000000D000E0014002100FFFFFFFF4269746D617020496D616765005061696E742E5069637475726500010500000200000007000000504272757368000000000000000000A0290000424D98290000000000005600000028000000AC00000078000000010004000000000000000000880B0000880B0000080000
LOAD CSV WITH HEADERS FROM "https://data.neo4j.com/northwind/categories.csv" AS row CREATE (n:Category) SET n = row;
Load supplier data.
suppliers.csv:
supplierID,companyName,contactName,contactTitle,address,city,region,postalCode,country,phone,fax,homePage 1,Exotic Liquids,Charlotte Cooper,Purchasing Manager,49 Gilbert St.,London,NULL,EC1 4SD,UK,(171) 555-2222,NULL,NULL 2,New Orleans Cajun Delights,Shelley Burke,Order Administrator,P.O. Box 78934,New Orleans,LA,70117,USA,(100) 555-4822,NULL,#CAJUN.HTM# 3,Grandma Kelly's Homestead,Regina Murphy,Sales Representative,707 Oxford Rd.,Ann Arbor,MI,48104,USA,(313) 555-5735,(313) 555-3349,NULL 4,Tokyo Traders,Yoshi Nagase,Marketing Manager,9-8 Sekimai Musashino-shi,Tokyo,NULL,100,Japan,(03) 3555-5011,NULL,NULL 5,Cooperativa de Quesos 'Las Cabras',Antonio del Valle Saavedra,Export Administrator,Calle del Rosal 4,Oviedo,Asturias,33007,Spain,(98) 598 76 54,NULL,NULL 6,Mayumi's,Mayumi Ohno,Marketing Representative,92 Setsuko Chuo-ku,Osaka,NULL,545,Japan,(06) 431-7877,NULL,Mayumi's (on the World Wide Web)#http://www.microsoft.com/accessdev/sampleapps/mayumi.htm# 7,Pavlova, Ltd.,Ian Devling,Marketing Manager,74 Rose St. Moonie Ponds,Melbourne,Victoria,3058,Australia,(03) 444-2343,(03) 444-6588,NULL 8,Specialty Biscuits, Ltd.,Peter Wilson,Sales Representative,29 King's Way,Manchester,NULL,M14 GSD,UK,(161) 555-4448,NULL,NULL 9,PB Knäckebröd AB,Lars Peterson,Sales Agent,Kaloadagatan 13,Göteborg,NULL,S-345 67,Sweden,031-987 65 43,031-987 65 91,NULL 10,Refrescos Americanas LTDA,Carlos Diaz,Marketing Manager,Av. das Americanas 12.890,Sao Paulo,NULL,5442,Brazil,(11) 555 4640,NULL,NULL 11,Heli Süßwaren GmbH & Co. KG,Petra Winkler,Sales Manager,Tiergartenstraße 5,Berlin,NULL,10785,Germany,(010) 9984510,NULL,NULL 12,Plutzer Lebensmittelgroßmärkte AG,Martin Bein,International Marketing Mgr.,Bogenallee 51,Frankfurt,NULL,60439,Germany,(069) 992755,NULL,Plutzer (on the World Wide Web)#http://www.microsoft.com/accessdev/sampleapps/plutzer.htm# 13,Nord-Ost-Fisch Handelsgesellschaft mbH,Sven Petersen,Coordinator Foreign Markets,Frahmredder 112a,Cuxhaven,NULL,27478,Germany,(04721) 8713,(04721) 8714,NULL 14,Formaggi Fortini s.r.l.,Elio Rossi,Sales Representative,Viale Dante, 75,Ravenna,NULL,48100,Italy,(0544) 60323,(0544) 60603,#FORMAGGI.HTM# 15,Norske Meierier,Beate Vileid,Marketing Manager,Hatlevegen 5,Sandvika,NULL,1320,Norway,(0)2-953010,NULL,NULL 16,Bigfoot Breweries,Cheryl Saylor,Regional Account Rep.,3400 - 8th Avenue Suite 210,Bend,OR,97101,USA,(503) 555-9931,NULL,NULL 17,Svensk Sjöföda AB,Michael Björn,Sales Representative,Brovallavägen 231,Stockholm,NULL,S-123 45,Sweden,08-123 45 67,NULL,NULL 18,Aux joyeux ecclésiastiques,Guylène Nodier,Sales Manager,203, Rue des Francs-Bourgeois,Paris,NULL,75004,France,(1) 03.83.00.68,(1) 03.83.00.62,NULL 19,New England Seafood Cannery,Robb Merchant,Wholesale Account Agent,Order Processing Dept. 2100 Paul Revere Blvd.,Boston,MA,02134,USA,(617) 555-3267,(617) 555-3389,NULL 20,Leka Trading,Chandra Leka,Owner,471 Serangoon Loop, Suite #402,Singapore,NULL,0512,Singapore,555-8787,NULL,NULL 21,Lyngbysild,Niels Petersen,Sales Manager,Lyngbysild Fiskebakken 10,Lyngby,NULL,2800,Denmark,43844108,43844115,NULL 22,Zaanse Snoepfabriek,Dirk Luchte,Accounting Manager,Verkoop Rijnweg 22,Zaandam,NULL,9999 ZZ,Netherlands,(12345) 1212,(12345) 1210,NULL 23,Karkki Oy,Anne Heikkonen,Product Manager,Valtakatu 12,Lappeenranta,NULL,53120,Finland,(953) 10956,NULL,NULL 24,G'day, Mate,Wendy Mackenzie,Sales Representative,170 Prince Edward Parade Hunter's Hill,Sydney,NSW,2042,Australia,(02) 555-5914,(02) 555-4873,G'day Mate (on the World Wide Web)#http://www.microsoft.com/accessdev/sampleapps/gdaymate.htm# 25,Ma Maison,Jean-Guy Lauzon,Marketing Manager,2960 Rue St. Laurent,Montréal,Québec,H1J 1C3,Canada,(514) 555-9022,NULL,NULL 26,Pasta Buttini s.r.l.,Giovanni Giudici,Order Administrator,Via dei Gelsomini, 153,Salerno,NULL,84100,Italy,(089) 6547665,(089) 6547667,NULL 27,Escargots Nouveaux,Marie Delamare,Sales Manager,22, rue H. Voiron,Montceau,NULL,71300,France,85.57.00.07,NULL,NULL 28,Gai pâturage,Eliane Noz,Sales Representative,Bat. B 3, rue des Alpes,Annecy,NULL,74000,France,38.76.98.06,38.76.98.58,NULL 29,Forêts d'érables,Chantal Goulet,Accounting Manager,148 rue Chasseur,Ste-Hyacinthe,Québec,J2S 7S8,Canada,(514) 555-2955,(514) 555-2921,NULL
LOAD CSV WITH HEADERS FROM "https://data.neo4j.com/northwind/suppliers.csv" AS row CREATE (n:Supplier) SET n = row;
Index product catalog data
CREATE INDEX FOR (p:Product) ON (p.productID); CREATE INDEX FOR (p:Product) ON (p.productName); CREATE INDEX FOR (c:Category) ON (c.categoryID); CREATE INDEX FOR (s:Supplier) ON (s.supplierID);
Relate product catalog data
Transform foreign key references into data relationships
The products, categories, and suppliers are related through foreign key references. Let's promote those to data relationships to realize the graph.
MATCH (p:Product), (c:Category) WHERE p.categoryID = c.categoryID CREATE (p) - [:PART_OF] -> (c);
MATCH (p:Product), (s:Supplier) WHERE p.supplierID = s.supplierID CREATE (s) - [:SUPPLIES] -> (p);
Query product data
Query patterns
Lets try some queries using patterns.
What categories of food does each supplier supply?
MATCH (s:Supplier) --> (:Product) --> (c:Category) RETURN s.companyName AS Company, collect(DISTINCT c.categoryName) AS Categories;
Find suppliers for the Produce cetegory.
MATCH (c:Category {categoryName: "Produce"}) <--(:Product) <-- (s:Supplier) RETURN DISTINCT s.companyName AS ProduceSuppliers;
Load customer orders
Load customer orders data from external CSV files
Northwind customers place orders, which may detail multiple products.
Load customer data.
customers.csv:
customerID,companyName,contactName,contactTitle,address,city,region,postalCode,country,phone,fax ALFKI,Alfreds Futterkiste,Maria Anders,Sales Representative,Obere Str. 57,Berlin,NULL,12209,Germany,030-0074321,030-0076545 ANATR,Ana Trujillo Emparedados y helados,Ana Trujillo,Owner,Avda. de la Constitución 2222,México D.F.,NULL,5021,Mexico,(5) 555-4729,(5) 555-3745 ANTON,Antonio Moreno Taquería,Antonio Moreno,Owner,Mataderos 2312,México D.F.,NULL,5023,Mexico,(5) 555-3932,NULL AROUT,Around the Horn,Thomas Hardy,Sales Representative,120 Hanover Sq.,London,NULL,WA1 1DP,UK,(171) 555-7788,(171) 555-6750 BERGS,Berglunds snabbköp,Christina Berglund,Order Administrator,Berguvsvägen 8,Luleå,NULL,S-958 22,Sweden,0921-12 34 65,0921-12 34 67 BLAUS,Blauer See Delikatessen,Hanna Moos,Sales Representative,Forsterstr. 57,Mannheim,NULL,68306,Germany,0621-08460,0621-08924 BLONP,Blondesddsl père et fils,Frédérique Citeaux,Marketing Manager,"24, place Kléber",Strasbourg,NULL,67000,France,88.60.15.31,88.60.15.32 BOLID,Bólido Comidas preparadas,Martín Sommer,Owner,"C/ Araquil, 67",Madrid,NULL,28023,Spain,(91) 555 22 82,(91) 555 91 99 BONAP,Bon app',Laurence Lebihan,Owner," 12, rue des Bouchers",Marseille,NULL,13008,France,91.24.45.40,91.24.45.41 BOTTM,Bottom-Dollar Markets,Elizabeth Lincoln,Accounting Manager,23 Tsawassen Blvd.,Tsawassen,BC,T2F 8M4,Canada,(604) 555-4729,(604) 555-3745 BSBEV,B's Beverages,Victoria Ashworth,Sales Representative,Fauntleroy Circus,London,NULL,EC2 5NT,UK,(171) 555-1212,NULL CACTU,Cactus Comidas para llevar,Patricio Simpson,Sales Agent,Cerrito 333,Buenos Aires,NULL,1010,Argentina,(1) 135-5555,(1) 135-4892 CENTC,Centro comercial Moctezuma,Francisco Chang,Marketing Manager,Sierras de Granada 9993,México D.F.,NULL,5022,Mexico,(5) 555-3392,(5) 555-7293 CHOPS,Chop-suey Chinese,Yang Wang,Owner,Hauptstr. 29,Bern,NULL,3012,Switzerland,0452-076545,NULL COMMI,Comércio Mineiro,Pedro Afonso,Sales Associate,"Av. dos Lusíadas, 23",Sao Paulo,SP,05432-043,Brazil,(11) 555-7647,NULL CONSH,Consolidated Holdings,Elizabeth Brown,Sales Representative,Berkeley Gardens 12 Brewery,London,NULL,WX1 6LT,UK,(171) 555-2282,(171) 555-9199 DRACD,Drachenblut Delikatessen,Sven Ottlieb,Order Administrator,Walserweg 21,Aachen,NULL,52066,Germany,0241-039123,0241-059428 DUMON,Du monde entier,Janine Labrune,Owner," 67, rue des Cinquante Otages",Nantes,NULL,44000,France,40.67.88.88,40.67.89.89 EASTC,Eastern Connection,Ann Devon,Sales Agent,35 King George,London,NULL,WX3 6FW,UK,(171) 555-0297,(171) 555-3373 ERNSH,Ernst Handel,Roland Mendel,Sales Manager,Kirchgasse 6,Graz,NULL,8010,Austria,7675-3425,7675-3426 FAMIA,Familia Arquibaldo,Aria Cruz,Marketing Assistant,"Rua Orós, 92",Sao Paulo,SP,05442-030,Brazil,(11) 555-9857,NULL FISSA,FISSA Fabrica Inter. Salchichas S.A.,Diego Roel,Accounting Manager,"C/ Moralzarzal, 86",Madrid,NULL,28034,Spain,(91) 555 94 44,(91) 555 55 93 FOLIG,Folies gourmandes,Martine Rancé,Assistant Sales Agent,"184, chaussée de Tournai",Lille,NULL,59000,France,20.16.10.16,20.16.10.17 FOLKO,Folk och fä HB,Maria Larsson,Owner,Åkergatan 24,Bräcke,NULL,S-844 67,Sweden,0695-34 67 21,NULL FRANK,Frankenversand,Peter Franken,Marketing Manager,Berliner Platz 43,München,NULL,80805,Germany,089-0877310,089-0877451 FRANR,France restauration,Carine Schmitt,Marketing Manager," 54, rue Royale",Nantes,NULL,44000,France,40.32.21.21,40.32.21.20 FRANS,Franchi S.p.A.,Paolo Accorti,Sales Representative,Via Monte Bianco 34,Torino,NULL,10100,Italy,011-4988260,011-4988261 FURIB,Furia Bacalhau e Frutos do Mar,Lino Rodriguez,Sales Manager,Jardim das rosas n. 32,Lisboa,NULL,1675,Portugal,(1) 354-2534,(1) 354-2535 GALED,Galería del gastrónomo,Eduardo Saavedra,Marketing Manager,"Rambla de Cataluña, 23",Barcelona,NULL,8022,Spain,(93) 203 4560,(93) 203 4561 GODOS,Godos Cocina Típica,José Pedro Freyre,Sales Manager,"C/ Romero, 33",Sevilla,NULL,41101,Spain,(95) 555 82 82,NULL GOURL,Gourmet Lanchonetes,André Fonseca,Sales Associate,"Av. Brasil, 442",Campinas,SP,04876-786,Brazil,(11) 555-9482,NULL GREAL,Great Lakes Food Market,Howard Snyder,Marketing Manager,2732 Baker Blvd.,Eugene,OR,97403,USA,(503) 555-7555,NULL GROSR,GROSELLA-Restaurante,Manuel Pereira,Owner,5ª Ave. Los Palos Grandes,Caracas,DF,1081,Venezuela,(2) 283-2951,(2) 283-3397 HANAR,Hanari Carnes,Mario Pontes,Accounting Manager,"Rua do Paço, 67",Rio de Janeiro,RJ,05454-876,Brazil,(21) 555-0091,(21) 555-8765 HILAA,HILARION-Abastos,Carlos Hernández,Sales Representative,Carrera 22 con Ave. Carlos Soublette #8-35,San Cristóbal,Táchira,5022,Venezuela,(5) 555-1340,(5) 555-1948 HUNGC,Hungry Coyote Import Store,Yoshi Latimer,Sales Representative,City Center Plaza 516 Main St.,Elgin,OR,97827,USA,(503) 555-6874,(503) 555-2376 HUNGO,Hungry Owl All-Night Grocers,Patricia McKenna,Sales Associate,8 Johnstown Road,Cork,Co. Cork,NULL,Ireland,2967 542,2967 3333 ISLAT,Island Trading,Helen Bennett,Marketing Manager,Garden House Crowther Way,Cowes,Isle of Wight,PO31 7PJ,UK,(198) 555-8888,NULL KOENE,Königlich Essen,Philip Cramer,Sales Associate,Maubelstr. 90,Brandenburg,NULL,14776,Germany,0555-09876,NULL LACOR,La corne d'abondance,Daniel Tonini,Sales Representative," 67, avenue de l'Europe",Versailles,NULL,78000,France,30.59.84.10,30.59.85.11 LAMAI,La maison d'Asie,Annette Roulet,Sales Manager,1 rue Alsace-Lorraine,Toulouse,NULL,31000,France,61.77.61.10,61.77.61.11 LAUGB,Laughing Bacchus Wine Cellars,Yoshi Tannamuri,Marketing Assistant,1900 Oak St.,Vancouver,BC,V3F 2K1,Canada,(604) 555-3392,(604) 555-7293 LAZYK,Lazy K Kountry Store,John Steel,Marketing Manager,12 Orchestra Terrace,Walla Walla,WA,99362,USA,(509) 555-7969,(509) 555-6221 LEHMS,Lehmanns Marktstand,Renate Messner,Sales Representative,Magazinweg 7,Frankfurt a.M.,NULL,60528,Germany,069-0245984,069-0245874 LETSS,Let's Stop N Shop,Jaime Yorres,Owner,87 Polk St. Suite 5,San Francisco,CA,94117,USA,(415) 555-5938,NULL LILAS,LILA-Supermercado,Carlos González,Accounting Manager,Carrera 52 con Ave. Bolívar #65-98 Llano Largo,Barquisimeto,Lara,3508,Venezuela,(9) 331-6954,(9) 331-7256 LINOD,LINO-Delicateses,Felipe Izquierdo,Owner,Ave. 5 de Mayo Porlamar,I. de Margarita,Nueva Esparta,4980,Venezuela,(8) 34-56-12,(8) 34-93-93 LONEP,Lonesome Pine Restaurant,Fran Wilson,Sales Manager,89 Chiaroscuro Rd.,Portland,OR,97219,USA,(503) 555-9573,(503) 555-9646 MAGAA,Magazzini Alimentari Riuniti,Giovanni Rovelli,Marketing Manager,Via Ludovico il Moro 22,Bergamo,NULL,24100,Italy,035-640230,035-640231 MAISD,Maison Dewey,Catherine Dewey,Sales Agent,Rue Joseph-Bens 532,Bruxelles,NULL,B-1180,Belgium,(02) 201 24 67,(02) 201 24 68 MEREP,Mère Paillarde,Jean Fresnière,Marketing Assistant,43 rue St. Laurent,Montréal,Québec,H1J 1C3,Canada,(514) 555-8054,(514) 555-8055 MORGK,Morgenstern Gesundkost,Alexander Feuer,Marketing Assistant,Heerstr. 22,Leipzig,NULL,4179,Germany,0342-023176,NULL NORTS,North/South,Simon Crowther,Sales Associate,South House 300 Queensbridge,London,NULL,SW7 1RZ,UK,(171) 555-7733,(171) 555-2530 OCEAN,Océano Atlántico Ltda.,Yvonne Moncada,Sales Agent,Ing. Gustavo Moncada 8585 Piso 20-A,Buenos Aires,NULL,1010,Argentina,(1) 135-5333,(1) 135-5535 OLDWO,Old World Delicatessen,Rene Phillips,Sales Representative,2743 Bering St.,Anchorage,AK,99508,USA,(907) 555-7584,(907) 555-2880 OTTIK,Ottilies Käseladen,Henriette Pfalzheim,Owner,Mehrheimerstr. 369,Köln,NULL,50739,Germany,0221-0644327,0221-0765721 PARIS,Paris spécialités,Marie Bertrand,Owner,"265, boulevard Charonne",Paris,NULL,75012,France,(1) 42.34.22.66,(1) 42.34.22.77 PERIC,Pericles Comidas clásicas,Guillermo Fernández,Sales Representative,Calle Dr. Jorge Cash 321,México D.F.,NULL,5033,Mexico,(5) 552-3745,(5) 545-3745 PICCO,Piccolo und mehr,Georg Pipps,Sales Manager,Geislweg 14,Salzburg,NULL,5020,Austria,6562-9722,6562-9723 PRINI,Princesa Isabel Vinhos,Isabel de Castro,Sales Representative,Estrada da saúde n. 58,Lisboa,NULL,1756,Portugal,(1) 356-5634,NULL QUEDE,Que Delícia,Bernardo Batista,Accounting Manager,"Rua da Panificadora, 12",Rio de Janeiro,RJ,02389-673,Brazil,(21) 555-4252,(21) 555-4545 QUEEN,Queen Cozinha,Lúcia Carvalho,Marketing Assistant,"Alameda dos Canàrios, 891",Sao Paulo,SP,05487-020,Brazil,(11) 555-1189,NULL QUICK,QUICK-Stop,Horst Kloss,Accounting Manager,Taucherstraße 10,Cunewalde,NULL,1307,Germany,0372-035188,NULL RANCH,Rancho grande,Sergio Gutiérrez,Sales Representative,Av. del Libertador 900,Buenos Aires,NULL,1010,Argentina,(1) 123-5555,(1) 123-5556 RATTC,Rattlesnake Canyon Grocery,Paula Wilson,Assistant Sales Representative,2817 Milton Dr.,Albuquerque,NM,87110,USA,(505) 555-5939,(505) 555-3620 REGGC,Reggiani Caseifici,Maurizio Moroni,Sales Associate,Strada Provinciale 124,Reggio Emilia,NULL,42100,Italy,0522-556721,0522-556722 RICAR,Ricardo Adocicados,Janete Limeira,Assistant Sales Agent,"Av. Copacabana, 267",Rio de Janeiro,RJ,02389-890,Brazil,(21) 555-3412,NULL RICSU,Richter Supermarkt,Michael Holz,Sales Manager,Grenzacherweg 237,Genève,NULL,1203,Switzerland,0897-034214,NULL ROMEY,Romero y tomillo,Alejandra Camino,Accounting Manager,"Gran Vía, 1",Madrid,NULL,28001,Spain,(91) 745 6200,(91) 745 6210 SANTG,Santé Gourmet,Jonas Bergulfsen,Owner,Erling Skakkes gate 78,Stavern,NULL,4110,Norway,07-98 92 35,07-98 92 47 SAVEA,Save-a-lot Markets,Jose Pavarotti,Sales Representative,187 Suffolk Ln.,Boise,ID,83720,USA,(208) 555-8097,NULL SEVES,Seven Seas Imports,Hari Kumar,Sales Manager,90 Wadhurst Rd.,London,NULL,OX15 4NB,UK,(171) 555-1717,(171) 555-5646 SIMOB,Simons bistro,Jytte Petersen,Owner,Vinbæltet 34,Kobenhavn,NULL,1734,Denmark,31 12 34 56,31 13 35 57 SPECD,Spécialités du monde,Dominique Perrier,Marketing Manager,"25, rue Lauriston",Paris,NULL,75016,France,(1) 47.55.60.10,(1) 47.55.60.20 SPLIR,Split Rail Beer & Ale,Art Braunschweiger,Sales Manager,P.O. Box 555,Lander,WY,82520,USA,(307) 555-4680,(307) 555-6525 SUPRD,Suprêmes délices,Pascale Cartrain,Accounting Manager,"Boulevard Tirou, 255",Charleroi,NULL,B-6000,Belgium,(071) 23 67 22 20,(071) 23 67 22 21 THEBI,The Big Cheese,Liz Nixon,Marketing Manager,89 Jefferson Way Suite 2,Portland,OR,97201,USA,(503) 555-3612,NULL THECR,The Cracker Box,Liu Wong,Marketing Assistant,55 Grizzly Peak Rd.,Butte,MT,59801,USA,(406) 555-5834,(406) 555-8083 TOMSP,Toms Spezialitäten,Karin Josephs,Marketing Manager,Luisenstr. 48,Münster,NULL,44087,Germany,0251-031259,0251-035695 TORTU,Tortuga Restaurante,Miguel Angel Paolino,Owner,Avda. Azteca 123,México D.F.,NULL,5033,Mexico,(5) 555-2933,NULL TRADH,Tradição Hipermercados,Anabela Domingues,Sales Representative,"Av. Inês de Castro, 414",Sao Paulo,SP,05634-030,Brazil,(11) 555-2167,(11) 555-2168 TRAIH,Trail's Head Gourmet Provisioners,Helvetius Nagy,Sales Associate,722 DaVinci Blvd.,Kirkland,WA,98034,USA,(206) 555-8257,(206) 555-2174 VAFFE,Vaffeljernet,Palle Ibsen,Sales Manager,Smagsloget 45,Århus,NULL,8200,Denmark,86 21 32 43,86 22 33 44 VICTE,Victuailles en stock,Mary Saveley,Sales Agent," 2, rue du Commerce",Lyon,NULL,69004,France,78.32.54.86,78.32.54.87 VINET,Vins et alcools Chevalier,Paul Henriot,Accounting Manager,59 rue de l'Abbaye,Reims,NULL,51100,France,26.47.15.10,26.47.15.11 WANDK,Die Wandernde Kuh,Rita Müller,Sales Representative,Adenauerallee 900,Stuttgart,NULL,70563,Germany,0711-020361,0711-035428 WARTH,Wartian Herkku,Pirkko Koskitalo,Accounting Manager,Torikatu 38,Oulu,NULL,90110,Finland,981-443655,981-443655 WELLI,Wellington Importadora,Paula Parente,Sales Manager,"Rua do Mercado, 12",Resende,SP,08737-363,Brazil,(14) 555-8122,NULL WHITC,White Clover Markets,Karl Jablonski,Owner,305 - 14th Ave. S. Suite 3B,Seattle,WA,98128,USA,(206) 555-4112,(206) 555-4115 WILMK,Wilman Kala,Matti Karttunen,Owner/Marketing Assistant,Keskuskatu 45,Helsinki,NULL,21240,Finland,90-224 8858,90-224 8858 WOLZA,Wolski Zajazd,Zbyszek Piestrzeniewicz,Owner,ul. Filtrowa 68,Warszawa,NULL,01-012,Poland,(26) 642-7012,(26) 642-7012
LOAD CSV WITH HEADERS FROM "https://data.neo4j.com/northwind/customers.csv" AS row CREATE (n:Customer) SET n = row;
Load order data.
orders.csv:
orderID,customerID,employeeID,orderDate,requiredDate,shippedDate,shipVia,freight,shipName,shipAddress,shipCity,shipRegion,shipPostalCode,shipCountry 10248,VINET,5,1996-07-04 00:00:00.000,1996-08-01 00:00:00.000,1996-07-16 00:00:00.000,3,32.38,Vins et alcools Chevalier,59 rue de l'Abbaye,Reims,NULL,51100,France 10249,TOMSP,6,1996-07-05 00:00:00.000,1996-08-16 00:00:00.000,1996-07-10 00:00:00.000,1,11.61,Toms Spezialitäten,Luisenstr. 48,Münster,NULL,44087,Germany 10250,HANAR,4,1996-07-08 00:00:00.000,1996-08-05 00:00:00.000,1996-07-12 00:00:00.000,2,65.83,Hanari Carnes,Rua do Paço, 67,Rio de Janeiro,RJ,05454-876,Brazil 10251,VICTE,3,1996-07-08 00:00:00.000,1996-08-05 00:00:00.000,1996-07-15 00:00:00.000,1,41.34,Victuailles en stock,2, rue du Commerce,Lyon,NULL,69004,France 10252,SUPRD,4,1996-07-09 00:00:00.000,1996-08-06 00:00:00.000,1996-07-11 00:00:00.000,2,51.30,Suprêmes délices,Boulevard Tirou, 255,Charleroi,NULL,B-6000,Belgium 10253,HANAR,3,1996-07-10 00:00:00.000,1996-07-24 00:00:00.000,1996-07-16 00:00:00.000,2,58.17,Hanari Carnes,Rua do Paço, 67,Rio de Janeiro,RJ,05454-876,Brazil 10254,CHOPS,5,1996-07-11 00:00:00.000,1996-08-08 00:00:00.000,1996-07-23 00:00:00.000,2,22.98,Chop-suey Chinese,Hauptstr. 31,Bern,NULL,3012,Switzerland 10255,RICSU,9,1996-07-12 00:00:00.000,1996-08-09 00:00:00.000,1996-07-15 00:00:00.000,3,148.33,Richter Supermarkt,Starenweg 5,Genève,NULL,1204,Switzerland 10256,WELLI,3,1996-07-15 00:00:00.000,1996-08-12 00:00:00.000,1996-07-17 00:00:00.000,2,13.97,Wellington Importadora,Rua do Mercado, 12,Resende,SP,08737-363,Brazil ......
LOAD CSV WITH HEADERS FROM "https://data.neo4j.com/northwind/orders.csv" AS row CREATE (n:Order) SET n = row;
Index customer orders data
Create node indexes based on label
CREATE INDEX FOR (n:Customer) ON (n.customerID); CREATE INDEX FOR (o:Order) ON (o.orderID);
Relate customer orders data
Create releationships between customers and orders
MATCH (c:Customer), (o:Order) WHERE c.customerID = o.customerID CREATE (c) - [:PURCHASED] -> (o);
Promote customer orders data
Transform join records into relationships
Notice that Order Details are always part of an order and that they relate the Order to a Product — they are a join table. Join tables are always a sign of a data relationship, indicating shared information between two other records.
Here, you directly promote each OrderDetail
record into a relationship in the graph.
order-details.csv:
orderID,productID,unitPrice,quantity,discount 10248,11,14.00,12,0 10248,42,9.80,10,0 10248,72,34.80,5,0 10249,14,18.60,9,0 10249,51,42.40,40,0 10250,41,7.70,10,0 10250,51,42.40,35,0.15 10250,65,16.80,15,0.15 10251,22,16.80,6,0.05 10251,57,15.60,15,0.05 ......
LOAD CSV WITH HEADERS FROM "https://data.neo4j.com/northwind/order-details.csv" AS row MATCH (p:Product), (o:Order) WHERE p.productID = row.productID AND o.orderID = row.orderID CREATE (o) - [details:ORDERS] -> (p) SET details = row, details.quantity = toInteger(row.quantity);
Query the Northwind graph
Query patterns
How many products did each customer purchase?
MATCH (cust:Customer) - [:PURCHASED] -> (:Order) - [o:ORDERS] -> (p:Product) RETURN DISTINCT cust.contactName AS CustomerName, SUM(o.quantity) AS TotalProductsPurchased;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2024-02-15 Go - map
2024-02-15 Go 100 mistakes - #26: Slices and memory leaks
2024-02-15 Go 100 mistakes - #25: Unexpected side effects using slice append
2024-02-15 Go 100 mistakes - #21: Inefficient slice initialization
2024-02-15 Go - slice