diff --git a/src/northwind.db b/src/northwind.db new file mode 100644 index 0000000..da01968 Binary files /dev/null and b/src/northwind.db differ diff --git a/src/queries.ipynb b/src/queries.ipynb new file mode 100644 index 0000000..72aae05 --- /dev/null +++ b/src/queries.ipynb @@ -0,0 +1,1172 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "74d37e52", + "metadata": {}, + "source": [ + "#### load SQL extension" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "16560880", + "metadata": {}, + "outputs": [], + "source": [ + "%reload_ext sql" + ] + }, + { + "cell_type": "markdown", + "id": "1caf23d4", + "metadata": {}, + "source": [ + "#### Connect to northwind db" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "db2bad45", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'Connected: @northwind.db'" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "%sql sqlite:///northwind.db" + ] + }, + { + "cell_type": "markdown", + "id": "74d837e4", + "metadata": {}, + "source": [ + "#### test connection" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "5bcd0d99", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " * sqlite:///northwind.db\n", + "Done.\n" + ] + }, + { + "data": { + "text/html": [ + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
FirstNameLastName
NancyDavolio
AndrewFuller
JanetLeverling
MargaretPeacock
StevenBuchanan
MichaelSuyama
RobertKing
LauraCallahan
AnneDodsworth
" + ], + "text/plain": [ + "[('Nancy', 'Davolio'),\n", + " ('Andrew', 'Fuller'),\n", + " ('Janet', 'Leverling'),\n", + " ('Margaret', 'Peacock'),\n", + " ('Steven', 'Buchanan'),\n", + " ('Michael', 'Suyama'),\n", + " ('Robert', 'King'),\n", + " ('Laura', 'Callahan'),\n", + " ('Anne', 'Dodsworth')]" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "%%sql\n", + "SELECT\n", + " FirstName,LastName\n", + "FROM \n", + " Employees\n", + "LIMIT\n", + " 10;\n" + ] + }, + { + "cell_type": "markdown", + "id": "4fd9143c", + "metadata": {}, + "source": [ + "#### Exercise 1\n", + "#### Find the names of all customers from Germany in the Northwind database." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "05e46774", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " * sqlite:///northwind.db\n", + "Done.\n" + ] + }, + { + "data": { + "text/html": [ + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
ContactName
Maria Anders
Hanna Moos
Sven Ottlieb
Peter Franken
Philip Cramer
Renate Messner
Alexander Feuer
Henriette Pfalzheim
Horst Kloss
Karin Josephs
Rita Müller
" + ], + "text/plain": [ + "[('Maria Anders',),\n", + " ('Hanna Moos',),\n", + " ('Sven Ottlieb',),\n", + " ('Peter Franken',),\n", + " ('Philip Cramer',),\n", + " ('Renate Messner',),\n", + " ('Alexander Feuer',),\n", + " ('Henriette Pfalzheim',),\n", + " ('Horst Kloss',),\n", + " ('Karin Josephs',),\n", + " ('Rita Müller',)]" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "%%sql\n", + "SELECT\n", + " ContactName\n", + "FROM\n", + " Customers\n", + "WHERE\n", + " Country = \"Germany\";\n" + ] + }, + { + "cell_type": "markdown", + "id": "af54dffe", + "metadata": {}, + "source": [ + "#### Exercise 2\n", + "#### Find all products in the Northwind database that have a unit price greater than 30 and are discontinued.\n", + "\n", + "#### Note: The product has been discontinued when the column Discontinued is equal to 1." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "afdf72b2", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " * sqlite:///northwind.db\n", + "Done.\n" + ] + }, + { + "data": { + "text/html": [ + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
ProductName
Mishi Kobe Niku
Alice Mutton
Rössle Sauerkraut
Thüringer Rostbratwurst
Perth Pasties
" + ], + "text/plain": [ + "[('Mishi Kobe Niku',),\n", + " ('Alice Mutton',),\n", + " ('Rössle Sauerkraut',),\n", + " ('Thüringer Rostbratwurst',),\n", + " ('Perth Pasties',)]" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "%%sql\n", + "SELECT\n", + " ProductName\n", + "FROM\n", + " Products\n", + "WHERE\n", + " UnitPrice > 30\n", + "AND\n", + " Discontinued = 1;\n" + ] + }, + { + "cell_type": "markdown", + "id": "8466c27e", + "metadata": {}, + "source": [ + "#### Exercise 3\n", + "#### Find the contact names and phone numbers of customers from either 'USA' or 'Canada'." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "364fc016", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " * sqlite:///northwind.db\n", + "Done.\n" + ] + }, + { + "data": { + "text/html": [ + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
ContactNamePhone
Elizabeth Lincoln(604) 555-4729
Howard Snyder(503) 555-7555
Yoshi Latimer(503) 555-6874
Yoshi Tannamuri(604) 555-3392
John Steel(509) 555-7969
Jaime Yorres(415) 555-5938
Fran Wilson(503) 555-9573
Jean Fresnière(514) 555-8054
Rene Phillips(907) 555-7584
Paula Wilson(505) 555-5939
Jose Pavarotti(208) 555-8097
Art Braunschweiger(307) 555-4680
Liz Nixon(503) 555-3612
Liu Wong(406) 555-5834
Helvetius Nagy(206) 555-8257
Karl Jablonski(206) 555-4112
" + ], + "text/plain": [ + "[('Elizabeth Lincoln', '(604) 555-4729'),\n", + " ('Howard Snyder', '(503) 555-7555'),\n", + " ('Yoshi Latimer', '(503) 555-6874'),\n", + " ('Yoshi Tannamuri', '(604) 555-3392'),\n", + " ('John Steel', '(509) 555-7969'),\n", + " ('Jaime Yorres', '(415) 555-5938'),\n", + " ('Fran Wilson', '(503) 555-9573'),\n", + " ('Jean Fresnière', '(514) 555-8054'),\n", + " ('Rene Phillips', '(907) 555-7584'),\n", + " ('Paula Wilson', '(505) 555-5939'),\n", + " ('Jose Pavarotti', '(208) 555-8097'),\n", + " ('Art Braunschweiger', '(307) 555-4680'),\n", + " ('Liz Nixon', '(503) 555-3612'),\n", + " ('Liu Wong', '(406) 555-5834'),\n", + " ('Helvetius Nagy', '(206) 555-8257'),\n", + " ('Karl Jablonski', '(206) 555-4112')]" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "%%sql\n", + "SELECT\n", + " ContactName,Phone\n", + "FROM\n", + " Customers\n", + "WHERE \n", + " Country IN(\"USA\",\"Canada\");" + ] + }, + { + "cell_type": "markdown", + "id": "2d91e113", + "metadata": {}, + "source": [ + "#### Exercise 4\n", + "#### From the 'Orders' table, select all orders that were placed by 'VINET', 'QUICK' or 'SUPRD' and were shipped via #### shipper 1 or 2." + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "f55d3668", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " * sqlite:///northwind.db\n", + "Done.\n" + ] + }, + { + "data": { + "text/html": [ + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
OrderIDCustomerIDEmployeeIDOrderDateRequiredDateShippedDateShipViaFreightShipNameShipAddressShipCityShipRegionShipPostalCodeShipCountry
10252SUPRD42016-07-092016-08-062016-07-11236.25Suprêmes délicesBoulevard Tirou, 255CharleroiWestern EuropeB-6000Belgium
10274VINET62016-08-062016-09-032016-08-16116.75Vins et alcools Chevalier59 rue de l-AbbayeReimsWestern Europe51100France
10285QUICK12016-08-202016-09-172016-08-26240.25QUICK-StopTaucherstraße 10CunewaldeWestern Europe1307Germany
10295VINET22016-09-022016-09-302016-09-10211Vins et alcools Chevalier59 rue de l-AbbayeReimsWestern Europe51100France
10302SUPRD42016-09-102016-10-082016-10-09230Suprêmes délicesBoulevard Tirou, 255CharleroiWestern EuropeB-6000Belgium
10313QUICK22016-09-242016-10-222016-10-04213QUICK-StopTaucherstraße 10CunewaldeWestern Europe1307Germany
10345QUICK22016-11-042016-12-022016-11-11249.75QUICK-StopTaucherstraße 10CunewaldeWestern Europe1307Germany
10361QUICK12016-11-222016-12-202016-12-03237.25QUICK-StopTaucherstraße 10CunewaldeWestern Europe1307Germany
10418QUICK42017-01-172017-02-142017-01-24146.5QUICK-StopTaucherstraße 10CunewaldeWestern Europe1307Germany
10475SUPRD92017-03-142017-04-112017-04-04144.25Suprêmes délicesBoulevard Tirou, 255CharleroiWestern EuropeB-6000Belgium
10515QUICK22017-04-232017-05-072017-05-23181.5QUICK-StopTaucherstraße 10CunewaldeWestern Europe1307Germany
10527QUICK72017-05-052017-06-022017-05-07130QUICK-StopTaucherstraße 10CunewaldeWestern Europe1307Germany
10549QUICK52017-05-272017-06-102017-05-30160.75QUICK-StopTaucherstraße 10CunewaldeWestern Europe1307Germany
10658QUICK42017-09-052017-10-032017-09-08173.75QUICK-StopTaucherstraße 10CunewaldeWestern Europe1307Germany
10691QUICK22017-10-032017-11-142017-10-22255.5QUICK-StopTaucherstraße 10CunewaldeWestern Europe1307Germany
10737VINET22017-11-112017-12-092017-11-18214Vins et alcools Chevalier59 rue de l-AbbayeReimsWestern Europe51100France
10745QUICK92017-11-182017-12-162017-11-27133QUICK-StopTaucherstraße 10CunewaldeWestern Europe1307Germany
10788QUICK12017-12-222018-01-192018-01-19232.5QUICK-StopTaucherstraße 10CunewaldeWestern Europe1307Germany
10841SUPRD52018-01-202018-02-172018-01-29237.75Suprêmes délicesBoulevard Tirou, 255CharleroiWestern EuropeB-6000Belgium
10845QUICK82018-01-212018-02-042018-01-30171.25QUICK-StopTaucherstraße 10CunewaldeWestern Europe1307Germany
" + ], + "text/plain": [ + "[(10252, 'SUPRD', 4, '2016-07-09', '2016-08-06', '2016-07-11', 2, 36.25, 'Suprêmes délices', 'Boulevard Tirou, 255', 'Charleroi', 'Western Europe', 'B-6000', 'Belgium'),\n", + " (10274, 'VINET', 6, '2016-08-06', '2016-09-03', '2016-08-16', 1, 16.75, 'Vins et alcools Chevalier', '59 rue de l-Abbaye', 'Reims', 'Western Europe', '51100', 'France'),\n", + " (10285, 'QUICK', 1, '2016-08-20', '2016-09-17', '2016-08-26', 2, 40.25, 'QUICK-Stop', 'Taucherstraße 10', 'Cunewalde', 'Western Europe', '1307', 'Germany'),\n", + " (10295, 'VINET', 2, '2016-09-02', '2016-09-30', '2016-09-10', 2, 11, 'Vins et alcools Chevalier', '59 rue de l-Abbaye', 'Reims', 'Western Europe', '51100', 'France'),\n", + " (10302, 'SUPRD', 4, '2016-09-10', '2016-10-08', '2016-10-09', 2, 30, 'Suprêmes délices', 'Boulevard Tirou, 255', 'Charleroi', 'Western Europe', 'B-6000', 'Belgium'),\n", + " (10313, 'QUICK', 2, '2016-09-24', '2016-10-22', '2016-10-04', 2, 13, 'QUICK-Stop', 'Taucherstraße 10', 'Cunewalde', 'Western Europe', '1307', 'Germany'),\n", + " (10345, 'QUICK', 2, '2016-11-04', '2016-12-02', '2016-11-11', 2, 49.75, 'QUICK-Stop', 'Taucherstraße 10', 'Cunewalde', 'Western Europe', '1307', 'Germany'),\n", + " (10361, 'QUICK', 1, '2016-11-22', '2016-12-20', '2016-12-03', 2, 37.25, 'QUICK-Stop', 'Taucherstraße 10', 'Cunewalde', 'Western Europe', '1307', 'Germany'),\n", + " (10418, 'QUICK', 4, '2017-01-17', '2017-02-14', '2017-01-24', 1, 46.5, 'QUICK-Stop', 'Taucherstraße 10', 'Cunewalde', 'Western Europe', '1307', 'Germany'),\n", + " (10475, 'SUPRD', 9, '2017-03-14', '2017-04-11', '2017-04-04', 1, 44.25, 'Suprêmes délices', 'Boulevard Tirou, 255', 'Charleroi', 'Western Europe', 'B-6000', 'Belgium'),\n", + " (10515, 'QUICK', 2, '2017-04-23', '2017-05-07', '2017-05-23', 1, 81.5, 'QUICK-Stop', 'Taucherstraße 10', 'Cunewalde', 'Western Europe', '1307', 'Germany'),\n", + " (10527, 'QUICK', 7, '2017-05-05', '2017-06-02', '2017-05-07', 1, 30, 'QUICK-Stop', 'Taucherstraße 10', 'Cunewalde', 'Western Europe', '1307', 'Germany'),\n", + " (10549, 'QUICK', 5, '2017-05-27', '2017-06-10', '2017-05-30', 1, 60.75, 'QUICK-Stop', 'Taucherstraße 10', 'Cunewalde', 'Western Europe', '1307', 'Germany'),\n", + " (10658, 'QUICK', 4, '2017-09-05', '2017-10-03', '2017-09-08', 1, 73.75, 'QUICK-Stop', 'Taucherstraße 10', 'Cunewalde', 'Western Europe', '1307', 'Germany'),\n", + " (10691, 'QUICK', 2, '2017-10-03', '2017-11-14', '2017-10-22', 2, 55.5, 'QUICK-Stop', 'Taucherstraße 10', 'Cunewalde', 'Western Europe', '1307', 'Germany'),\n", + " (10737, 'VINET', 2, '2017-11-11', '2017-12-09', '2017-11-18', 2, 14, 'Vins et alcools Chevalier', '59 rue de l-Abbaye', 'Reims', 'Western Europe', '51100', 'France'),\n", + " (10745, 'QUICK', 9, '2017-11-18', '2017-12-16', '2017-11-27', 1, 33, 'QUICK-Stop', 'Taucherstraße 10', 'Cunewalde', 'Western Europe', '1307', 'Germany'),\n", + " (10788, 'QUICK', 1, '2017-12-22', '2018-01-19', '2018-01-19', 2, 32.5, 'QUICK-Stop', 'Taucherstraße 10', 'Cunewalde', 'Western Europe', '1307', 'Germany'),\n", + " (10841, 'SUPRD', 5, '2018-01-20', '2018-02-17', '2018-01-29', 2, 37.75, 'Suprêmes délices', 'Boulevard Tirou, 255', 'Charleroi', 'Western Europe', 'B-6000', 'Belgium'),\n", + " (10845, 'QUICK', 8, '2018-01-21', '2018-02-04', '2018-01-30', 1, 71.25, 'QUICK-Stop', 'Taucherstraße 10', 'Cunewalde', 'Western Europe', '1307', 'Germany')]" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "%%sql\n", + "SELECT\n", + " *\n", + "FROM\n", + " Orders\n", + "WHERE\n", + " CustomerID IN(\"VINET\",\"QUICK\",\"SUPRD\")\n", + "AND\n", + " ShipVia IN(1,2)\n", + "LIMIT\n", + " 20;\n" + ] + }, + { + "cell_type": "markdown", + "id": "daba3b78", + "metadata": {}, + "source": [ + "#### Challenge question\n", + "#### Find the employees in the Northwind database who are either Sales Representatives or Sales Managers and are #### based in London." + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "3602a70e", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " * sqlite:///northwind.db\n", + "Done.\n" + ] + }, + { + "data": { + "text/html": [ + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
FirstNameLastNameTitle
StevenBuchananSales Manager
MichaelSuyamaSales Representative
RobertKingSales Representative
AnneDodsworthSales Representative
" + ], + "text/plain": [ + "[('Steven', 'Buchanan', 'Sales Manager'),\n", + " ('Michael', 'Suyama', 'Sales Representative'),\n", + " ('Robert', 'King', 'Sales Representative'),\n", + " ('Anne', 'Dodsworth', 'Sales Representative')]" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "%%sql\n", + "SELECT\n", + " FirstName,LastName,Title\n", + "FROM\n", + " Employees\n", + "WHERE\n", + " Title IN(\"Sales Representative\",\"Sales Manager\")\n", + "AND\n", + " City = \"London\";" + ] + }, + { + "cell_type": "markdown", + "id": "ff96b919", + "metadata": {}, + "source": [ + "#### suppliers - companyName and contactName" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "9bf0f20c", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " * sqlite:///northwind.db\n", + "Done.\n" + ] + }, + { + "data": { + "text/html": [ + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
CompanyNameContactName
Exotic LiquidsCharlotte Cooper
New Orleans Cajun DelightsShelley Burke
Grandma Kelly's HomesteadRegina Murphy
Tokyo TradersYoshi Nagase
Cooperativa de Quesos 'Las Cabras'Antonio del Valle Saavedra
Mayumi'sMayumi Ohno
Pavlova, Ltd.Ian Devling
Specialty Biscuits, Ltd.Peter Wilson
PB Knäckebröd ABLars Peterson
Refrescos Americanas LTDACarlos Diaz
Heli Süßwaren GmbH & Co. KGPetra Winkler
Plutzer Lebensmittelgroßmärkte AGMartin Bein
Nord-Ost-Fisch Handelsgesellschaft mbHSven Petersen
Formaggi Fortini s.r.l.Elio Rossi
Norske MeierierBeate Vileid
Bigfoot BreweriesCheryl Saylor
Svensk Sjöföda ABMichael Björn
Aux joyeux ecclésiastiquesGuylène Nodier
New England Seafood CanneryRobb Merchant
Leka TradingChandra Leka
LyngbysildNiels Petersen
Zaanse SnoepfabriekDirk Luchte
Karkki OyAnne Heikkonen
G'day, MateWendy Mackenzie
Ma MaisonJean-Guy Lauzon
Pasta Buttini s.r.l.Giovanni Giudici
Escargots NouveauxMarie Delamare
Gai pâturageEliane Noz
Forêts d'érablesChantal Goulet
" + ], + "text/plain": [ + "[('Exotic Liquids', 'Charlotte Cooper'),\n", + " ('New Orleans Cajun Delights', 'Shelley Burke'),\n", + " (\"Grandma Kelly's Homestead\", 'Regina Murphy'),\n", + " ('Tokyo Traders', 'Yoshi Nagase'),\n", + " (\"Cooperativa de Quesos 'Las Cabras'\", 'Antonio del Valle Saavedra '),\n", + " (\"Mayumi's\", 'Mayumi Ohno'),\n", + " ('Pavlova, Ltd.', 'Ian Devling'),\n", + " ('Specialty Biscuits, Ltd.', 'Peter Wilson'),\n", + " ('PB Knäckebröd AB', 'Lars Peterson'),\n", + " ('Refrescos Americanas LTDA', 'Carlos Diaz'),\n", + " ('Heli Süßwaren GmbH & Co. KG', 'Petra Winkler'),\n", + " ('Plutzer Lebensmittelgroßmärkte AG', 'Martin Bein'),\n", + " ('Nord-Ost-Fisch Handelsgesellschaft mbH', 'Sven Petersen'),\n", + " ('Formaggi Fortini s.r.l.', 'Elio Rossi'),\n", + " ('Norske Meierier', 'Beate Vileid'),\n", + " ('Bigfoot Breweries', 'Cheryl Saylor'),\n", + " ('Svensk Sjöföda AB', 'Michael Björn'),\n", + " ('Aux joyeux ecclésiastiques', 'Guylène Nodier'),\n", + " ('New England Seafood Cannery', 'Robb Merchant'),\n", + " ('Leka Trading', 'Chandra Leka'),\n", + " ('Lyngbysild', 'Niels Petersen'),\n", + " ('Zaanse Snoepfabriek', 'Dirk Luchte'),\n", + " ('Karkki Oy', 'Anne Heikkonen'),\n", + " (\"G'day, Mate\", 'Wendy Mackenzie'),\n", + " ('Ma Maison', 'Jean-Guy Lauzon'),\n", + " ('Pasta Buttini s.r.l.', 'Giovanni Giudici'),\n", + " ('Escargots Nouveaux', 'Marie Delamare'),\n", + " ('Gai pâturage', 'Eliane Noz'),\n", + " (\"Forêts d'érables\", 'Chantal Goulet')]" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "%%sql\n", + "SELECT\n", + " CompanyName,ContactName\n", + "FROM\n", + " Suppliers;\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "SQL_packages", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +}