-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathQueries.txt
76 lines (65 loc) · 2.04 KB
/
Queries.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
SQL1:
SELECT t1.Name, COUNT(*) AS "Number of listeners", COUNT(*)*100/59 AS "Percentage %"
FROM(
SELECT Customer.CustomerId, Genre.Name, COUNT(*)
FROM Customer
JOIN Invoice
ON Invoice.CustomerId = Customer.CustomerId
JOIN InvoiceLine
ON InvoiceLine.InvoiceId = Invoice.InvoiceId
JOIN Track
ON Track.TrackId = InvoiceLine.TrackId
JOIN Genre
ON Genre.GenreId = Track.GenreId
GROUP BY Customer.CustomerId, Genre.Name
ORDER BY Customer.CustomerId) as t1
GROUP BY 1
ORDER BY 2 DESC
------------------------------------------------------------------------------------------------------------------------------------------
SQL2:
SELECT Customer.Country, SUM(InvoiceLine.UnitPrice) AS "Total Spend"
FROM Customer
JOIN Invoice
ON Invoice.CustomerId = Customer.CustomerId
JOIN InvoiceLine
ON InvoiceLine.InvoiceId = Invoice.InvoiceId
JOIN Track
ON Track.TrackId = InvoiceLine.TrackId
JOIN Genre
ON Genre.GenreId = Track.GenreId
WHERE Genre.Name = "Rock"
GROUP BY Customer.Country
ORDER BY 2 DESC
------------------------------------------------------------------------------------------------------------------------------------------
SQL3:
SELECT t1.month, sum(t1.UnitPrice) AS "Total Profit"
FROM(
SELECT *, strftime("%m",Invoice.InvoiceDate) month
FROM Invoice
JOIN InvoiceLine
ON InvoiceLine.InvoiceId = Invoice.InvoiceId
JOIN Track
ON Track.TrackId = InvoiceLine.TrackId
JOIN Genre
ON Genre.GenreId = track.GenreId
WHERE Genre.Name = "Rock") AS t1
GROUP BY 1
ORDER BY 1
------------------------------------------------------------------------------------------------------------------------------------------
SQL4:
SELECT Artist.Name as "Artist/Band Name", SUM(InvoiceLine.UnitPrice) AS "2013 Total Gross "
FROM Invoice
JOIN InvoiceLine
ON InvoiceLine.InvoiceId = Invoice.InvoiceId
JOIN Track
ON track.TrackId = InvoiceLine.TrackId
JOIN Album
ON Album.AlbumId = Track.AlbumId
JOIN Artist
ON Artist.ArtistId = Album.ArtistId
JOIN genre
ON Genre.GenreId = Track.GenreId
WHERE genre.Name = "Rock"
AND Invoice.InvoiceDate > "2012-12-31"
GROUP BY 1
ORDER BY 2 DESC