{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"%LOAD sqlite3 db=chinook.db timeout=2 shared_cache=true"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"| GenreId | \n",
"Name | \n",
"MediaTypeId | \n",
"Name | \n",
"
\n",
"\n",
"| 1 | \n",
"Rock | \n",
"1 | \n",
"MPEG audio file | \n",
"
\n",
"\n",
"| 2 | \n",
"Jazz | \n",
"1 | \n",
"MPEG audio file | \n",
"
\n",
"\n",
"| 3 | \n",
"Metal | \n",
"1 | \n",
"MPEG audio file | \n",
"
\n",
"\n",
"| 4 | \n",
"Alternative & Punk | \n",
"1 | \n",
"MPEG audio file | \n",
"
\n",
"\n",
"| 5 | \n",
"Rock And Roll | \n",
"1 | \n",
"MPEG audio file | \n",
"
\n",
"\n",
"| 6 | \n",
"Blues | \n",
"1 | \n",
"MPEG audio file | \n",
"
\n",
"\n",
"| 7 | \n",
"Latin | \n",
"1 | \n",
"MPEG audio file | \n",
"
\n",
"\n",
"| 8 | \n",
"Reggae | \n",
"1 | \n",
"MPEG audio file | \n",
"
\n",
"\n",
"| 9 | \n",
"Pop | \n",
"1 | \n",
"MPEG audio file | \n",
"
\n",
"\n",
"| 10 | \n",
"Soundtrack | \n",
"1 | \n",
"MPEG audio file | \n",
"
\n",
"
\n",
"10 rows in set (0.00 sec)"
],
"text/plain": [
"+---------+--------------------+-------------+-----------------+\n",
"| GenreId | Name | MediaTypeId | Name |\n",
"+---------+--------------------+-------------+-----------------+\n",
"| 1 | Rock | 1 | MPEG audio file |\n",
"+---------+--------------------+-------------+-----------------+\n",
"| 2 | Jazz | 1 | MPEG audio file |\n",
"+---------+--------------------+-------------+-----------------+\n",
"| 3 | Metal | 1 | MPEG audio file |\n",
"+---------+--------------------+-------------+-----------------+\n",
"| 4 | Alternative & Punk | 1 | MPEG audio file |\n",
"+---------+--------------------+-------------+-----------------+\n",
"| 5 | Rock And Roll | 1 | MPEG audio file |\n",
"+---------+--------------------+-------------+-----------------+\n",
"| 6 | Blues | 1 | MPEG audio file |\n",
"+---------+--------------------+-------------+-----------------+\n",
"| 7 | Latin | 1 | MPEG audio file |\n",
"+---------+--------------------+-------------+-----------------+\n",
"| 8 | Reggae | 1 | MPEG audio file |\n",
"+---------+--------------------+-------------+-----------------+\n",
"| 9 | Pop | 1 | MPEG audio file |\n",
"+---------+--------------------+-------------+-----------------+\n",
"| 10 | Soundtrack | 1 | MPEG audio file |\n",
"+---------+--------------------+-------------+-----------------+\n",
"10 rows in set (0.00 sec)"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"SELECT * FROM genres, media_types limit 10"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.vegalite.v3+json": {
"$schema": "https://vega.github.io/schema/vega-lite/v4.json",
"config": {
"axis": {
"grid": true
}
},
"data": {
"values": [
{
"GenreId": "1",
"MediaTypeId": "1",
"Name": "Rock"
},
{
"GenreId": "2",
"MediaTypeId": "1",
"Name": "MPEG audio file"
},
{
"GenreId": "3",
"MediaTypeId": "1",
"Name": "Jazz"
},
{
"GenreId": "4",
"MediaTypeId": "1",
"Name": "MPEG audio file"
},
{
"GenreId": "5",
"MediaTypeId": "1",
"Name": "Metal"
},
{
"GenreId": "6",
"MediaTypeId": "1",
"Name": "MPEG audio file"
},
{
"GenreId": "7",
"MediaTypeId": "1",
"Name": "Alternative & Punk"
},
{
"GenreId": "8",
"MediaTypeId": "1",
"Name": "MPEG audio file"
},
{
"GenreId": "9",
"MediaTypeId": "1",
"Name": "Rock And Roll"
},
{
"GenreId": "10",
"MediaTypeId": "1",
"Name": "MPEG audio file"
},
{
"GenreId": "11",
"MediaTypeId": "1",
"Name": "Blues"
},
{
"GenreId": "12",
"MediaTypeId": "1",
"Name": "MPEG audio file"
},
{
"GenreId": "13",
"MediaTypeId": "1",
"Name": "Latin"
},
{
"GenreId": "14",
"MediaTypeId": "1",
"Name": "MPEG audio file"
},
{
"GenreId": "15",
"MediaTypeId": "1",
"Name": "Reggae"
},
{
"GenreId": "16",
"MediaTypeId": "1",
"Name": "MPEG audio file"
},
{
"GenreId": "17",
"MediaTypeId": "1",
"Name": "Pop"
},
{
"GenreId": "18",
"MediaTypeId": "1",
"Name": "MPEG audio file"
},
{
"GenreId": "19",
"MediaTypeId": "1",
"Name": "Soundtrack"
},
{
"GenreId": "20",
"MediaTypeId": "1",
"Name": "MPEG audio file"
},
{
"GenreId": "21",
"MediaTypeId": "1",
"Name": "Bossa Nova"
},
{
"GenreId": "22",
"MediaTypeId": "1",
"Name": "MPEG audio file"
},
{
"GenreId": "23",
"MediaTypeId": "1",
"Name": "Easy Listening"
},
{
"GenreId": "24",
"MediaTypeId": "1",
"Name": "MPEG audio file"
},
{
"GenreId": "25",
"MediaTypeId": "1",
"Name": "Heavy Metal"
},
{
"GenreId": "1",
"MediaTypeId": "2",
"Name": "MPEG audio file"
},
{
"GenreId": "2",
"MediaTypeId": "2",
"Name": "R&B/Soul"
},
{
"GenreId": "3",
"MediaTypeId": "2",
"Name": "MPEG audio file"
},
{
"GenreId": "4",
"MediaTypeId": "2",
"Name": "Electronica/Dance"
},
{
"GenreId": "5",
"MediaTypeId": "2",
"Name": "MPEG audio file"
},
{
"GenreId": "6",
"MediaTypeId": "2",
"Name": "World"
},
{
"GenreId": "7",
"MediaTypeId": "2",
"Name": "MPEG audio file"
},
{
"GenreId": "8",
"MediaTypeId": "2",
"Name": "Hip Hop/Rap"
},
{
"GenreId": "9",
"MediaTypeId": "2",
"Name": "MPEG audio file"
},
{
"GenreId": "10",
"MediaTypeId": "2",
"Name": "Science Fiction"
},
{
"GenreId": "11",
"MediaTypeId": "2",
"Name": "MPEG audio file"
},
{
"GenreId": "12",
"MediaTypeId": "2",
"Name": "TV Shows"
},
{
"GenreId": "13",
"MediaTypeId": "2",
"Name": "MPEG audio file"
},
{
"GenreId": "14",
"MediaTypeId": "2",
"Name": "Sci Fi & Fantasy"
},
{
"GenreId": "15",
"MediaTypeId": "2",
"Name": "MPEG audio file"
},
{
"GenreId": "16",
"MediaTypeId": "2",
"Name": "Drama"
},
{
"GenreId": "17",
"MediaTypeId": "2",
"Name": "MPEG audio file"
},
{
"GenreId": "18",
"MediaTypeId": "2",
"Name": "Comedy"
},
{
"GenreId": "19",
"MediaTypeId": "2",
"Name": "MPEG audio file"
},
{
"GenreId": "20",
"MediaTypeId": "2",
"Name": "Alternative"
},
{
"GenreId": "21",
"MediaTypeId": "2",
"Name": "MPEG audio file"
},
{
"GenreId": "22",
"MediaTypeId": "2",
"Name": "Classical"
},
{
"GenreId": "23",
"MediaTypeId": "2",
"Name": "MPEG audio file"
},
{
"GenreId": "24",
"MediaTypeId": "2",
"Name": "Opera"
},
{
"GenreId": "25",
"MediaTypeId": "2",
"Name": "MPEG audio file"
},
{
"GenreId": "1",
"MediaTypeId": "3",
"Name": "Rock"
},
{
"GenreId": "2",
"MediaTypeId": "3",
"Name": "Protected AAC audio file"
},
{
"GenreId": "3",
"MediaTypeId": "3",
"Name": "Jazz"
},
{
"GenreId": "4",
"MediaTypeId": "3",
"Name": "Protected AAC audio file"
},
{
"GenreId": "5",
"MediaTypeId": "3",
"Name": "Metal"
},
{
"GenreId": "6",
"MediaTypeId": "3",
"Name": "Protected AAC audio file"
},
{
"GenreId": "7",
"MediaTypeId": "3",
"Name": "Alternative & Punk"
},
{
"GenreId": "8",
"MediaTypeId": "3",
"Name": "Protected AAC audio file"
},
{
"GenreId": "9",
"MediaTypeId": "3",
"Name": "Rock And Roll"
},
{
"GenreId": "10",
"MediaTypeId": "3",
"Name": "Protected AAC audio file"
},
{
"GenreId": "11",
"MediaTypeId": "3",
"Name": "Blues"
},
{
"GenreId": "12",
"MediaTypeId": "3",
"Name": "Protected AAC audio file"
},
{
"GenreId": "13",
"MediaTypeId": "3",
"Name": "Latin"
},
{
"GenreId": "14",
"MediaTypeId": "3",
"Name": "Protected AAC audio file"
},
{
"GenreId": "15",
"MediaTypeId": "3",
"Name": "Reggae"
},
{
"GenreId": "16",
"MediaTypeId": "3",
"Name": "Protected AAC audio file"
},
{
"GenreId": "17",
"MediaTypeId": "3",
"Name": "Pop"
},
{
"GenreId": "18",
"MediaTypeId": "3",
"Name": "Protected AAC audio file"
},
{
"GenreId": "19",
"MediaTypeId": "3",
"Name": "Soundtrack"
},
{
"GenreId": "20",
"MediaTypeId": "3",
"Name": "Protected AAC audio file"
},
{
"GenreId": "21",
"MediaTypeId": "3",
"Name": "Bossa Nova"
},
{
"GenreId": "22",
"MediaTypeId": "3",
"Name": "Protected AAC audio file"
},
{
"GenreId": "23",
"MediaTypeId": "3",
"Name": "Easy Listening"
},
{
"GenreId": "24",
"MediaTypeId": "3",
"Name": "Protected AAC audio file"
},
{
"GenreId": "25",
"MediaTypeId": "3",
"Name": "Heavy Metal"
},
{
"GenreId": "1",
"MediaTypeId": "4",
"Name": "Protected AAC audio file"
},
{
"GenreId": "2",
"MediaTypeId": "4",
"Name": "R&B/Soul"
},
{
"GenreId": "3",
"MediaTypeId": "4",
"Name": "Protected AAC audio file"
},
{
"GenreId": "4",
"MediaTypeId": "4",
"Name": "Electronica/Dance"
},
{
"GenreId": "5",
"MediaTypeId": "4",
"Name": "Protected AAC audio file"
},
{
"GenreId": "6",
"MediaTypeId": "4",
"Name": "World"
},
{
"GenreId": "7",
"MediaTypeId": "4",
"Name": "Protected AAC audio file"
},
{
"GenreId": "8",
"MediaTypeId": "4",
"Name": "Hip Hop/Rap"
},
{
"GenreId": "9",
"MediaTypeId": "4",
"Name": "Protected AAC audio file"
},
{
"GenreId": "10",
"MediaTypeId": "4",
"Name": "Science Fiction"
},
{
"GenreId": "11",
"MediaTypeId": "4",
"Name": "Protected AAC audio file"
},
{
"GenreId": "12",
"MediaTypeId": "4",
"Name": "TV Shows"
},
{
"GenreId": "13",
"MediaTypeId": "4",
"Name": "Protected AAC audio file"
},
{
"GenreId": "14",
"MediaTypeId": "4",
"Name": "Sci Fi & Fantasy"
},
{
"GenreId": "15",
"MediaTypeId": "4",
"Name": "Protected AAC audio file"
},
{
"GenreId": "16",
"MediaTypeId": "4",
"Name": "Drama"
},
{
"GenreId": "17",
"MediaTypeId": "4",
"Name": "Protected AAC audio file"
},
{
"GenreId": "18",
"MediaTypeId": "4",
"Name": "Comedy"
},
{
"GenreId": "19",
"MediaTypeId": "4",
"Name": "Protected AAC audio file"
},
{
"GenreId": "20",
"MediaTypeId": "4",
"Name": "Alternative"
},
{
"GenreId": "21",
"MediaTypeId": "4",
"Name": "Protected AAC audio file"
},
{
"GenreId": "22",
"MediaTypeId": "4",
"Name": "Classical"
},
{
"GenreId": "23",
"MediaTypeId": "4",
"Name": "Protected AAC audio file"
},
{
"GenreId": "24",
"MediaTypeId": "4",
"Name": "Opera"
},
{
"GenreId": "25",
"MediaTypeId": "4",
"Name": "Protected AAC audio file"
},
{
"GenreId": "1",
"MediaTypeId": "5",
"Name": "Rock"
},
{
"GenreId": "2",
"MediaTypeId": "5",
"Name": "Protected MPEG-4 video file"
},
{
"GenreId": "3",
"MediaTypeId": "5",
"Name": "Jazz"
},
{
"GenreId": "4",
"MediaTypeId": "5",
"Name": "Protected MPEG-4 video file"
},
{
"GenreId": "5",
"MediaTypeId": "5",
"Name": "Metal"
},
{
"GenreId": "6",
"MediaTypeId": "5",
"Name": "Protected MPEG-4 video file"
},
{
"GenreId": "7",
"MediaTypeId": "5",
"Name": "Alternative & Punk"
},
{
"GenreId": "8",
"MediaTypeId": "5",
"Name": "Protected MPEG-4 video file"
},
{
"GenreId": "9",
"MediaTypeId": "5",
"Name": "Rock And Roll"
},
{
"GenreId": "10",
"MediaTypeId": "5",
"Name": "Protected MPEG-4 video file"
},
{
"GenreId": "11",
"MediaTypeId": "5",
"Name": "Blues"
},
{
"GenreId": "12",
"MediaTypeId": "5",
"Name": "Protected MPEG-4 video file"
},
{
"GenreId": "13",
"MediaTypeId": "5",
"Name": "Latin"
},
{
"GenreId": "14",
"MediaTypeId": "5",
"Name": "Protected MPEG-4 video file"
},
{
"GenreId": "15",
"MediaTypeId": "5",
"Name": "Reggae"
},
{
"GenreId": "16",
"MediaTypeId": "5",
"Name": "Protected MPEG-4 video file"
},
{
"GenreId": "17",
"MediaTypeId": "5",
"Name": "Pop"
},
{
"GenreId": "18",
"MediaTypeId": "5",
"Name": "Protected MPEG-4 video file"
},
{
"GenreId": "19",
"MediaTypeId": "5",
"Name": "Soundtrack"
},
{
"GenreId": "20",
"MediaTypeId": "5",
"Name": "Protected MPEG-4 video file"
},
{
"GenreId": "21",
"MediaTypeId": "5",
"Name": "Bossa Nova"
},
{
"GenreId": "22",
"MediaTypeId": "5",
"Name": "Protected MPEG-4 video file"
},
{
"GenreId": "23",
"MediaTypeId": "5",
"Name": "Easy Listening"
},
{
"GenreId": "24",
"MediaTypeId": "5",
"Name": "Protected MPEG-4 video file"
},
{
"GenreId": "25",
"MediaTypeId": "5",
"Name": "Heavy Metal"
},
{
"Name": "Protected MPEG-4 video file"
},
{
"Name": "R&B/Soul"
},
{
"Name": "Protected MPEG-4 video file"
},
{
"Name": "Electronica/Dance"
},
{
"Name": "Protected MPEG-4 video file"
},
{
"Name": "World"
},
{
"Name": "Protected MPEG-4 video file"
},
{
"Name": "Hip Hop/Rap"
},
{
"Name": "Protected MPEG-4 video file"
},
{
"Name": "Science Fiction"
},
{
"Name": "Protected MPEG-4 video file"
},
{
"Name": "TV Shows"
},
{
"Name": "Protected MPEG-4 video file"
},
{
"Name": "Sci Fi & Fantasy"
},
{
"Name": "Protected MPEG-4 video file"
},
{
"Name": "Drama"
},
{
"Name": "Protected MPEG-4 video file"
},
{
"Name": "Comedy"
},
{
"Name": "Protected MPEG-4 video file"
},
{
"Name": "Alternative"
},
{
"Name": "Protected MPEG-4 video file"
},
{
"Name": "Classical"
},
{
"Name": "Protected MPEG-4 video file"
},
{
"Name": "Opera"
},
{
"Name": "Protected MPEG-4 video file"
},
{
"Name": "Rock"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Jazz"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Metal"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Alternative & Punk"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Rock And Roll"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Blues"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Latin"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Reggae"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Pop"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Soundtrack"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Bossa Nova"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Easy Listening"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Heavy Metal"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "R&B/Soul"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Electronica/Dance"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "World"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Hip Hop/Rap"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Science Fiction"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "TV Shows"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Sci Fi & Fantasy"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Drama"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Comedy"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Alternative"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Classical"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Opera"
},
{
"Name": "Purchased AAC audio file"
},
{
"Name": "Rock"
},
{
"Name": "AAC audio file"
},
{
"Name": "Jazz"
},
{
"Name": "AAC audio file"
},
{
"Name": "Metal"
},
{
"Name": "AAC audio file"
},
{
"Name": "Alternative & Punk"
},
{
"Name": "AAC audio file"
},
{
"Name": "Rock And Roll"
},
{
"Name": "AAC audio file"
},
{
"Name": "Blues"
},
{
"Name": "AAC audio file"
},
{
"Name": "Latin"
},
{
"Name": "AAC audio file"
},
{
"Name": "Reggae"
},
{
"Name": "AAC audio file"
},
{
"Name": "Pop"
},
{
"Name": "AAC audio file"
},
{
"Name": "Soundtrack"
},
{
"Name": "AAC audio file"
},
{
"Name": "Bossa Nova"
},
{
"Name": "AAC audio file"
},
{
"Name": "Easy Listening"
},
{
"Name": "AAC audio file"
},
{
"Name": "Heavy Metal"
},
{
"Name": "AAC audio file"
},
{
"Name": "R&B/Soul"
},
{
"Name": "AAC audio file"
},
{
"Name": "Electronica/Dance"
},
{
"Name": "AAC audio file"
},
{
"Name": "World"
},
{
"Name": "AAC audio file"
},
{
"Name": "Hip Hop/Rap"
},
{
"Name": "AAC audio file"
},
{
"Name": "Science Fiction"
},
{
"Name": "AAC audio file"
},
{
"Name": "TV Shows"
},
{
"Name": "AAC audio file"
},
{
"Name": "Sci Fi & Fantasy"
},
{
"Name": "AAC audio file"
},
{
"Name": "Drama"
},
{
"Name": "AAC audio file"
},
{
"Name": "Comedy"
},
{
"Name": "AAC audio file"
},
{
"Name": "Alternative"
},
{
"Name": "AAC audio file"
},
{
"Name": "Classical"
},
{
"Name": "AAC audio file"
},
{
"Name": "Opera"
},
{
"Name": "AAC audio file"
}
]
},
"encoding": {
"x": {
"field": "GenreId",
"type": "quantitative"
},
"y": {
"field": "MediaTypeId",
"type": "quantitative"
}
},
"height": 300,
"mark": {
"color": "red",
"type": "area"
},
"width": 300
},
"image/png": "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"
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"%XVEGA_PLOT X_FIELD GenreId Y_FIELD MediaTypeId MARK area COLOR red WIDTH 300 HEIGHT 300 <> SELECT * FROM genres, media_types"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"| count(*) | \n",
"
\n",
"\n",
"| 25 | \n",
"
\n",
"
\n",
"1 row in set (0,00 sec)"
],
"text/plain": [
"+----------+\n",
"| count(*) |\n",
"+----------+\n",
"| 25 |\n",
"+----------+\n",
"1 row in set (0,00 sec)"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"select count(*) from genres;"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"| EmployeeId | \n",
"LastName | \n",
"FirstName | \n",
"Title | \n",
"ReportsTo | \n",
"BirthDate | \n",
"HireDate | \n",
"Address | \n",
"City | \n",
"State | \n",
"Country | \n",
"PostalCode | \n",
"Phone | \n",
"Fax | \n",
"Email | \n",
"
\n",
"\n",
"| 1 | \n",
"Adams | \n",
"Andrew | \n",
"General Manager | \n",
"NULL | \n",
"1962-02-18 00:00:00 | \n",
"2002-08-14 00:00:00 | \n",
"11120 Jasper Ave NW | \n",
"Edmonton | \n",
"AB | \n",
"Canada | \n",
"T5K 2N1 | \n",
"+1 (780) 428-9482 | \n",
"+1 (780) 428-3457 | \n",
"andrew@chinookcorp.com | \n",
"
\n",
"\n",
"| 2 | \n",
"Edwards | \n",
"Nancy | \n",
"Sales Manager | \n",
"1 | \n",
"1958-12-08 00:00:00 | \n",
"2002-05-01 00:00:00 | \n",
"825 8 Ave SW | \n",
"Calgary | \n",
"AB | \n",
"Canada | \n",
"T2P 2T3 | \n",
"+1 (403) 262-3443 | \n",
"+1 (403) 262-3322 | \n",
"nancy@chinookcorp.com | \n",
"
\n",
"\n",
"| 3 | \n",
"Peacock | \n",
"Jane | \n",
"Sales Support Agent | \n",
"2 | \n",
"1973-08-29 00:00:00 | \n",
"2002-04-01 00:00:00 | \n",
"1111 6 Ave SW | \n",
"Calgary | \n",
"AB | \n",
"Canada | \n",
"T2P 5M5 | \n",
"+1 (403) 262-3443 | \n",
"+1 (403) 262-6712 | \n",
"jane@chinookcorp.com | \n",
"
\n",
"\n",
"| 4 | \n",
"Park | \n",
"Margaret | \n",
"Sales Support Agent | \n",
"2 | \n",
"1947-09-19 00:00:00 | \n",
"2003-05-03 00:00:00 | \n",
"683 10 Street SW | \n",
"Calgary | \n",
"AB | \n",
"Canada | \n",
"T2P 5G3 | \n",
"+1 (403) 263-4423 | \n",
"+1 (403) 263-4289 | \n",
"margaret@chinookcorp.com | \n",
"
\n",
"\n",
"| 5 | \n",
"Johnson | \n",
"Steve | \n",
"Sales Support Agent | \n",
"2 | \n",
"1965-03-03 00:00:00 | \n",
"2003-10-17 00:00:00 | \n",
"7727B 41 Ave | \n",
"Calgary | \n",
"AB | \n",
"Canada | \n",
"T3B 1Y7 | \n",
"1 (780) 836-9987 | \n",
"1 (780) 836-9543 | \n",
"steve@chinookcorp.com | \n",
"
\n",
"
\n",
"5 rows in set (0,00 sec)"
],
"text/plain": [
"+------------+----------+-----------+---------------------+-----------+---------------------+---------------------+---------------------+----------+-------+---------+------------+-------------------+-------------------+--------------------------+\n",
"| EmployeeId | LastName | FirstName | Title | ReportsTo | BirthDate | HireDate | Address | City | State | Country | PostalCode | Phone | Fax | Email |\n",
"+------------+----------+-----------+---------------------+-----------+---------------------+---------------------+---------------------+----------+-------+---------+------------+-------------------+-------------------+--------------------------+\n",
"| 1 | Adams | Andrew | General Manager | NULL | 1962-02-18 00:00:00 | 2002-08-14 00:00:00 | 11120 Jasper Ave NW | Edmonton | AB | Canada | T5K 2N1 | +1 (780) 428-9482 | +1 (780) 428-3457 | andrew@chinookcorp.com |\n",
"+------------+----------+-----------+---------------------+-----------+---------------------+---------------------+---------------------+----------+-------+---------+------------+-------------------+-------------------+--------------------------+\n",
"| 2 | Edwards | Nancy | Sales Manager | 1 | 1958-12-08 00:00:00 | 2002-05-01 00:00:00 | 825 8 Ave SW | Calgary | AB | Canada | T2P 2T3 | +1 (403) 262-3443 | +1 (403) 262-3322 | nancy@chinookcorp.com |\n",
"+------------+----------+-----------+---------------------+-----------+---------------------+---------------------+---------------------+----------+-------+---------+------------+-------------------+-------------------+--------------------------+\n",
"| 3 | Peacock | Jane | Sales Support Agent | 2 | 1973-08-29 00:00:00 | 2002-04-01 00:00:00 | 1111 6 Ave SW | Calgary | AB | Canada | T2P 5M5 | +1 (403) 262-3443 | +1 (403) 262-6712 | jane@chinookcorp.com |\n",
"+------------+----------+-----------+---------------------+-----------+---------------------+---------------------+---------------------+----------+-------+---------+------------+-------------------+-------------------+--------------------------+\n",
"| 4 | Park | Margaret | Sales Support Agent | 2 | 1947-09-19 00:00:00 | 2003-05-03 00:00:00 | 683 10 Street SW | Calgary | AB | Canada | T2P 5G3 | +1 (403) 263-4423 | +1 (403) 263-4289 | margaret@chinookcorp.com |\n",
"+------------+----------+-----------+---------------------+-----------+---------------------+---------------------+---------------------+----------+-------+---------+------------+-------------------+-------------------+--------------------------+\n",
"| 5 | Johnson | Steve | Sales Support Agent | 2 | 1965-03-03 00:00:00 | 2003-10-17 00:00:00 | 7727B 41 Ave | Calgary | AB | Canada | T3B 1Y7 | 1 (780) 836-9987 | 1 (780) 836-9543 | steve@chinookcorp.com |\n",
"+------------+----------+-----------+---------------------+-----------+---------------------+---------------------+---------------------+----------+-------+---------+------------+-------------------+-------------------+--------------------------+\n",
"5 rows in set (0,00 sec)"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"select * from employees LIMIT 5;"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "xsql",
"language": "sqlite",
"name": "xsql"
},
"language_info": {
"codemirror_mode": "sql",
"file_extension": "",
"mimetype": "",
"name": "mysql",
"version": "0.1.2"
}
},
"nbformat": 4,
"nbformat_minor": 4
}