Schema:
CREATE TABLE `Album` (
  `AlbumId` integer NOT NULL
,  `Title` varchar(160) NOT NULL
,  `ArtistId` integer NOT NULL
,  PRIMARY KEY (`AlbumId`)
,  CONSTRAINT `FK_AlbumArtistId` FOREIGN KEY (`ArtistId`) REFERENCES `Artist` (`ArtistId`) ON DELETE NO ACTION ON UPDATE NO ACTION
);
CREATE TABLE `Artist` (
  `ArtistId` integer NOT NULL
,  `Name` varchar(120) DEFAULT NULL
,  PRIMARY KEY (`ArtistId`)
);
CREATE TABLE `Customer` (
  `CustomerId` integer NOT NULL
,  `FirstName` varchar(40) NOT NULL
,  `LastName` varchar(20) NOT NULL
,  `Company` varchar(80) DEFAULT NULL
,  `Address` varchar(70) DEFAULT NULL
,  `City` varchar(40) DEFAULT NULL
,  `State` varchar(40) DEFAULT NULL
,  `Country` varchar(40) DEFAULT NULL
,  `PostalCode` varchar(10) DEFAULT NULL
,  `Phone` varchar(24) DEFAULT NULL
,  `Fax` varchar(24) DEFAULT NULL
,  `Email` varchar(60) NOT NULL
,  `SupportRepId` integer DEFAULT NULL
,  PRIMARY KEY (`CustomerId`)
,  CONSTRAINT `FK_CustomerSupportRepId` FOREIGN KEY (`SupportRepId`) REFERENCES `Employee` (`EmployeeId`) ON DELETE NO ACTION ON UPDATE NO ACTION
);
CREATE TABLE `Employee` (
  `EmployeeId` integer NOT NULL
,  `LastName` varchar(20) NOT NULL
,  `FirstName` varchar(20) NOT NULL
,  `Title` varchar(30) DEFAULT NULL
,  `ReportsTo` integer DEFAULT NULL
,  `BirthDate` datetime DEFAULT NULL
,  `HireDate` datetime DEFAULT NULL
,  `Address` varchar(70) DEFAULT NULL
,  `City` varchar(40) DEFAULT NULL
,  `State` varchar(40) DEFAULT NULL
,  `Country` varchar(40) DEFAULT NULL
,  `PostalCode` varchar(10) DEFAULT NULL
,  `Phone` varchar(24) DEFAULT NULL
,  `Fax` varchar(24) DEFAULT NULL
,  `Email` varchar(60) DEFAULT NULL
,  PRIMARY KEY (`EmployeeId`)
,  CONSTRAINT `FK_EmployeeReportsTo` FOREIGN KEY (`ReportsTo`) REFERENCES `Employee` (`EmployeeId`) ON DELETE NO ACTION ON UPDATE NO ACTION
);
CREATE TABLE `Genre` (
  `GenreId` integer NOT NULL
,  `Name` varchar(120) DEFAULT NULL
,  PRIMARY KEY (`GenreId`)
);
CREATE TABLE `Invoice` (
  `InvoiceId` integer NOT NULL
,  `CustomerId` integer NOT NULL
,  `InvoiceDate` datetime NOT NULL
,  `BillingAddress` varchar(70) DEFAULT NULL
,  `BillingCity` varchar(40) DEFAULT NULL
,  `BillingState` varchar(40) DEFAULT NULL
,  `BillingCountry` varchar(40) DEFAULT NULL
,  `BillingPostalCode` varchar(10) DEFAULT NULL
,  `Total` decimal(10,2) NOT NULL
,  PRIMARY KEY (`InvoiceId`)
,  CONSTRAINT `FK_InvoiceCustomerId` FOREIGN KEY (`CustomerId`) REFERENCES `Customer` (`CustomerId`) ON DELETE NO ACTION ON UPDATE NO ACTION
);
CREATE TABLE `InvoiceLine` (
  `InvoiceLineId` integer NOT NULL
,  `InvoiceId` integer NOT NULL
,  `TrackId` integer NOT NULL
,  `UnitPrice` decimal(10,2) NOT NULL
,  `Quantity` integer NOT NULL
,  PRIMARY KEY (`InvoiceLineId`)
,  CONSTRAINT `FK_InvoiceLineInvoiceId` FOREIGN KEY (`InvoiceId`) REFERENCES `Invoice` (`InvoiceId`) ON DELETE NO ACTION ON UPDATE NO ACTION
,  CONSTRAINT `FK_InvoiceLineTrackId` FOREIGN KEY (`TrackId`) REFERENCES `Track` (`TrackId`) ON DELETE NO ACTION ON UPDATE NO ACTION
);
CREATE TABLE `MediaType` (
  `MediaTypeId` integer NOT NULL
,  `Name` varchar(120) DEFAULT NULL
,  PRIMARY KEY (`MediaTypeId`)
);
CREATE TABLE `Playlist` (
  `PlaylistId` integer NOT NULL
,  `Name` varchar(120) DEFAULT NULL
,  PRIMARY KEY (`PlaylistId`)
);
CREATE TABLE `PlaylistTrack` (
  `PlaylistId` integer NOT NULL
,  `TrackId` integer NOT NULL
,  PRIMARY KEY (`PlaylistId`,`TrackId`)
,  CONSTRAINT `FK_PlaylistTrackPlaylistId` FOREIGN KEY (`PlaylistId`) REFERENCES `Playlist` (`PlaylistId`) ON DELETE NO ACTION ON UPDATE NO ACTION
,  CONSTRAINT `FK_PlaylistTrackTrackId` FOREIGN KEY (`TrackId`) REFERENCES `Track` (`TrackId`) ON DELETE NO ACTION ON UPDATE NO ACTION
);
CREATE TABLE `Track` (
  `TrackId` integer NOT NULL
,  `Name` varchar(200) NOT NULL
,  `AlbumId` integer DEFAULT NULL
,  `MediaTypeId` integer NOT NULL
,  `GenreId` integer DEFAULT NULL
,  `Composer` varchar(220) DEFAULT NULL
,  `Milliseconds` integer NOT NULL
,  `Bytes` integer DEFAULT NULL
,  `UnitPrice` decimal(10,2) NOT NULL
,  PRIMARY KEY (`TrackId`)
,  CONSTRAINT `FK_TrackAlbumId` FOREIGN KEY (`AlbumId`) REFERENCES `Album` (`AlbumId`) ON DELETE NO ACTION ON UPDATE NO ACTION
,  CONSTRAINT `FK_TrackGenreId` FOREIGN KEY (`GenreId`) REFERENCES `Genre` (`GenreId`) ON DELETE NO ACTION ON UPDATE NO ACTION
,  CONSTRAINT `FK_TrackMediaTypeId` FOREIGN KEY (`MediaTypeId`) REFERENCES `MediaType` (`MediaTypeId`) ON DELETE NO ACTION ON UPDATE NO ACTION
);

Question: How many albums are there?
SQL:
SELECT count(*) FROM ALBUM

Question: Find the number of albums.
SQL:
SELECT count(*) FROM ALBUM

Question: List the names of all music genres.
SQL:
SELECT Name FROM GENRE

Question: What are the names of different music genres?
SQL:
SELECT Name FROM GENRE

Question: Find all the customer information in state NY.
SQL:
SELECT * FROM CUSTOMER WHERE State  =  "NY"

Question: What is all the customer information for customers in NY state?
SQL:
SELECT * FROM CUSTOMER WHERE State  =  "NY"

Question: What are the first names and last names of the employees who live in Calgary city.
SQL:
SELECT FirstName ,  LastName FROM EMPLOYEE WHERE City  =  "Calgary"

Question: Find the full names of employees living in the city of Calgary.
SQL:
SELECT FirstName ,  LastName FROM EMPLOYEE WHERE City  =  "Calgary"

Question: What are the distinct billing countries of the invoices?
SQL:
SELECT distinct(BillingCountry) FROM INVOICE

Question: Find the different billing countries for all invoices.
SQL:
SELECT distinct(BillingCountry) FROM INVOICE

Question: Find the names of all artists that have "a" in their names.
SQL:
SELECT Name FROM ARTIST WHERE Name LIKE "%a%"

Question: What are the names of artist who have the letter 'a' in their names?
SQL:
SELECT Name FROM ARTIST WHERE Name LIKE "%a%"

Question: Find the title of all the albums of the artist "AC/DC".
SQL:
SELECT Title FROM ALBUM AS T1 JOIN ARTIST AS T2 ON T1.ArtistId  =  T2.ArtistId WHERE T2.Name  =  "AC/DC"

Question: What are the titles of albums by the artist "AC/DC"?
SQL:
SELECT Title FROM ALBUM AS T1 JOIN ARTIST AS T2 ON T1.ArtistId  =  T2.ArtistId WHERE T2.Name  =  "AC/DC"

Question: Hom many albums does the artist "Metallica" have?
SQL:
SELECT COUNT(*) FROM ALBUM AS T1 JOIN ARTIST AS T2 ON T1.ArtistId  =  T2.ArtistId WHERE T2.Name  =  "Metallica"

Question: Find the number of albums by the artist "Metallica".
SQL:
SELECT COUNT(*) FROM ALBUM AS T1 JOIN ARTIST AS T2 ON T1.ArtistId  =  T2.ArtistId WHERE T2.Name  =  "Metallica"

Question: Which artist does the album "Balls to the Wall" belong to?
SQL:
SELECT T2.Name FROM ALBUM AS T1 JOIN ARTIST AS T2 ON T1.ArtistId  =  T2.ArtistId WHERE T1.Title  =  "Balls to the Wall"

Question: Find the name of the artist who made the album "Balls to the Wall".
SQL:
SELECT T2.Name FROM ALBUM AS T1 JOIN ARTIST AS T2 ON T1.ArtistId  =  T2.ArtistId WHERE T1.Title  =  "Balls to the Wall"

Question: Which artist has the most albums?
SQL:
SELECT T2.Name FROM ALBUM AS T1 JOIN ARTIST AS T2 ON T1.ArtistId  =  T2.ArtistId GROUP BY T2.Name ORDER BY COUNT(*) DESC LIMIT 1

Question: What is the name of the artist with the greatest number of albums?
SQL:
SELECT T2.Name FROM ALBUM AS T1 JOIN ARTIST AS T2 ON T1.ArtistId  =  T2.ArtistId GROUP BY T2.Name ORDER BY COUNT(*) DESC LIMIT 1

Question: Find the names of all the tracks that contain the word "you".
SQL:
SELECT Name FROM TRACK WHERE Name LIKE '%you%'

Question: What are the names of tracks that contain the the word you in them?
SQL:
SELECT Name FROM TRACK WHERE Name LIKE '%you%'

Question: What is the average unit price of all the tracks?
SQL:
SELECT AVG(UnitPrice) FROM TRACK

Question: Find the average unit price for a track.
SQL:
SELECT AVG(UnitPrice) FROM TRACK

Question: What are the durations of the longest and the shortest tracks in milliseconds?
SQL:
SELECT max(Milliseconds) ,  min(Milliseconds) FROM TRACK

Question: Find the maximum and minimum durations of tracks in milliseconds.
SQL:
SELECT max(Milliseconds) ,  min(Milliseconds) FROM TRACK

Question: Show the album names, ids and the number of tracks for each album.
SQL:
SELECT T1.Title ,  T2.AlbumID ,  COUNT(*) FROM ALBUM AS T1 JOIN TRACK AS T2 ON T1.AlbumId  =  T2.AlbumId GROUP BY T2.AlbumID

Question: What are the names and ids of the different albums, and how many tracks are on each?
SQL:
SELECT T1.Title ,  T2.AlbumID ,  COUNT(*) FROM ALBUM AS T1 JOIN TRACK AS T2 ON T1.AlbumId  =  T2.AlbumId GROUP BY T2.AlbumID

Question: What is the name of the most common genre in all tracks?
SQL:
SELECT T1.Name FROM GENRE AS T1 JOIN TRACK AS T2 ON T1.GenreId  =  T2.GenreId GROUP BY T2.GenreId ORDER BY COUNT(*) DESC LIMIT 1

Question: Find the name of the genre that is most frequent across all tracks.
SQL:
SELECT T1.Name FROM GENRE AS T1 JOIN TRACK AS T2 ON T1.GenreId  =  T2.GenreId GROUP BY T2.GenreId ORDER BY COUNT(*) DESC LIMIT 1

Question: What is the least common media type in all tracks?
SQL:
SELECT T1.Name FROM MEDIATYPE AS T1 JOIN TRACK AS T2 ON T1.MediaTypeId  =  T2.MediaTypeId GROUP BY T2.MediaTypeId ORDER BY COUNT(*) ASC LIMIT 1

Question: What is the name of the media type that is least common across all tracks?
SQL:
SELECT T1.Name FROM MEDIATYPE AS T1 JOIN TRACK AS T2 ON T1.MediaTypeId  =  T2.MediaTypeId GROUP BY T2.MediaTypeId ORDER BY COUNT(*) ASC LIMIT 1

Question: Show the album names and ids for albums that contain tracks with unit price bigger than 1.
SQL:
SELECT T1.Title ,  T2.AlbumID FROM ALBUM AS T1 JOIN TRACK AS T2 ON T1.AlbumId  =  T2.AlbumId WHERE T2.UnitPrice  >  1 GROUP BY T2.AlbumID

Question: What are the titles and ids for albums containing tracks with unit price greater than 1?
SQL:
SELECT T1.Title ,  T2.AlbumID FROM ALBUM AS T1 JOIN TRACK AS T2 ON T1.AlbumId  =  T2.AlbumId WHERE T2.UnitPrice  >  1 GROUP BY T2.AlbumID

Question: How many tracks belong to rock genre?
SQL:
SELECT COUNT(*) FROM GENRE AS T1 JOIN TRACK AS T2 ON T1.GenreId  =  T2.GenreId WHERE T1.Name  =  "Rock"

Question: Count the number of tracks that are part of the rock genre.
SQL:
SELECT COUNT(*) FROM GENRE AS T1 JOIN TRACK AS T2 ON T1.GenreId  =  T2.GenreId WHERE T1.Name  =  "Rock"

Question: What is the average unit price of tracks that belong to Jazz genre?
SQL:
SELECT AVG(UnitPrice) FROM GENRE AS T1 JOIN TRACK AS T2 ON T1.GenreId  =  T2.GenreId WHERE T1.Name  =  "Jazz"

Question: Find the average unit price of jazz tracks.
SQL:
SELECT AVG(UnitPrice) FROM GENRE AS T1 JOIN TRACK AS T2 ON T1.GenreId  =  T2.GenreId WHERE T1.Name  =  "Jazz"

Question: What is the first name and last name of the customer that has email "luisg@embraer.com.br"?
SQL:
SELECT FirstName ,  LastName FROM CUSTOMER WHERE Email  =  "luisg@embraer.com.br"

Question: Find the full name of the customer with the email "luisg@embraer.com.br".
SQL:
SELECT FirstName ,  LastName FROM CUSTOMER WHERE Email  =  "luisg@embraer.com.br"

Question: How many customers have email that contains "gmail.com"?
SQL:
SELECT COUNT(*) FROM CUSTOMER WHERE Email LIKE "%gmail.com%"

Question: Count the number of customers that have an email containing "gmail.com".
SQL:
SELECT COUNT(*) FROM CUSTOMER WHERE Email LIKE "%gmail.com%"

Question: What is the first name and last name employee helps the customer with first name Leonie?
SQL:
SELECT T2.FirstName ,  T2.LastName FROM CUSTOMER AS T1 JOIN EMPLOYEE AS T2 ON T1.SupportRepId  =  T2.EmployeeId WHERE T1.FirstName  =  "Leonie"

Question: Find the full names of employees who help customers with the first name Leonie.
SQL:
SELECT T2.FirstName ,  T2.LastName FROM CUSTOMER AS T1 JOIN EMPLOYEE AS T2 ON T1.SupportRepId  =  T2.EmployeeId WHERE T1.FirstName  =  "Leonie"

Question: What city does the employee who helps the customer with postal code 70174 live in?
SQL:
SELECT T2.City FROM CUSTOMER AS T1 JOIN EMPLOYEE AS T2 ON T1.SupportRepId  =  T2.EmployeeId WHERE T1.PostalCode  =  "70174"

Question: Find the cities corresponding to employees who help customers with the postal code 70174.
SQL:
SELECT T2.City FROM CUSTOMER AS T1 JOIN EMPLOYEE AS T2 ON T1.SupportRepId  =  T2.EmployeeId WHERE T1.PostalCode  =  "70174"

Question: How many distinct cities does the employees live in?
SQL:
SELECT COUNT(DISTINCT city) FROM EMPLOYEE

Question: Find the number of different cities that employees live in.
SQL:
SELECT COUNT(DISTINCT city) FROM EMPLOYEE

Question: Find all invoice dates corresponding to customers with first name Astrid and last name Gruber.
SQL:
SELECT T2.InvoiceDate FROM CUSTOMER AS T1 JOIN INVOICE AS T2 ON T1.CustomerId  =  T2.CustomerId WHERE T1.FirstName  =  "Astrid" AND LastName  =  "Gruber"

Question: What are the invoice dates for customers with the first name Astrid and the last name Gruber?
SQL:
SELECT T2.InvoiceDate FROM CUSTOMER AS T1 JOIN INVOICE AS T2 ON T1.CustomerId  =  T2.CustomerId WHERE T1.FirstName  =  "Astrid" AND LastName  =  "Gruber"

Question: Find all the customer last names that do not have invoice totals larger than 20.
SQL:
SELECT LastName FROM CUSTOMER EXCEPT SELECT T1.LastName FROM CUSTOMER AS T1 JOIN Invoice AS T2 ON T1.CustomerId  =  T2.CustomerId WHERE T2.total  >  20

Question: What are the last names of customers without invoice totals exceeding 20?
SQL:
SELECT LastName FROM CUSTOMER EXCEPT SELECT T1.LastName FROM CUSTOMER AS T1 JOIN Invoice AS T2 ON T1.CustomerId  =  T2.CustomerId WHERE T2.total  >  20

Question: Find the first names of all customers that live in Brazil and have an invoice.
SQL:
SELECT DISTINCT T1.FirstName FROM CUSTOMER AS T1 JOIN INVOICE AS T2 ON T1.CustomerId  =  T2.CustomerId WHERE T1.country  =  "Brazil"

Question: What are the different first names for customers from Brazil who have also had an invoice?
SQL:
SELECT DISTINCT T1.FirstName FROM CUSTOMER AS T1 JOIN INVOICE AS T2 ON T1.CustomerId  =  T2.CustomerId WHERE T1.country  =  "Brazil"

Question: Find the address of all customers that live in Germany and have invoice.
SQL:
SELECT DISTINCT T1.Address FROM CUSTOMER AS T1 JOIN INVOICE AS T2 ON T1.CustomerId  =  T2.CustomerId WHERE T1.country  =  "Germany"

Question: What are the addresses of customers living in Germany who have had an invoice?
SQL:
SELECT DISTINCT T1.Address FROM CUSTOMER AS T1 JOIN INVOICE AS T2 ON T1.CustomerId  =  T2.CustomerId WHERE T1.country  =  "Germany"

Question: List the phone numbers of all employees.
SQL:
SELECT Phone FROM EMPLOYEE

Question: What are the phone numbers for each employee?
SQL:
SELECT Phone FROM EMPLOYEE

Question: How many tracks are in the AAC audio file media type?
SQL:
SELECT COUNT(*) FROM MEDIATYPE AS T1 JOIN TRACK AS T2 ON T1.MediaTypeId  =  T2.MediaTypeId WHERE T1.Name  =  "AAC audio file"

Question: Count the number of tracks that are of the media type "AAC audio file".
SQL:
SELECT COUNT(*) FROM MEDIATYPE AS T1 JOIN TRACK AS T2 ON T1.MediaTypeId  =  T2.MediaTypeId WHERE T1.Name  =  "AAC audio file"

Question: What is the average duration in milliseconds of tracks that belong to Latin or Pop genre?
SQL:
SELECT AVG(Milliseconds) FROM GENRE AS T1 JOIN TRACK AS T2 ON T1.GenreId  =  T2.GenreId WHERE T1.Name  =  "Latin" OR T1.Name  =  "Pop"

Question: Find the average millisecond length of Latin and Pop tracks.
SQL:
SELECT AVG(Milliseconds) FROM GENRE AS T1 JOIN TRACK AS T2 ON T1.GenreId  =  T2.GenreId WHERE T1.Name  =  "Latin" OR T1.Name  =  "Pop"

Question: Please show the employee first names and ids of employees who serve at least 10 customers.
SQL:
SELECT T1.FirstName ,  T1.SupportRepId FROM CUSTOMER AS T1 JOIN EMPLOYEE AS T2 ON T1.SupportRepId  =  T2.EmployeeId GROUP BY T1.SupportRepId HAVING COUNT(*)  >=  10

Question: What are the first names and support rep ids for employees serving 10 or more customers?
SQL:
SELECT T1.FirstName ,  T1.SupportRepId FROM CUSTOMER AS T1 JOIN EMPLOYEE AS T2 ON T1.SupportRepId  =  T2.EmployeeId GROUP BY T1.SupportRepId HAVING COUNT(*)  >=  10

Question: Please show the employee last names that serves no more than 20 customers.
SQL:
SELECT T1.LastName FROM CUSTOMER AS T1 JOIN EMPLOYEE AS T2 ON T1.SupportRepId  =  T2.EmployeeId GROUP BY T1.SupportRepId HAVING COUNT(*)  <=  20

Question: What are the last names of employees who serve at most 20 customers?
SQL:
SELECT T1.LastName FROM CUSTOMER AS T1 JOIN EMPLOYEE AS T2 ON T1.SupportRepId  =  T2.EmployeeId GROUP BY T1.SupportRepId HAVING COUNT(*)  <=  20

Question: Please list all album titles in alphabetical order.
SQL:
SELECT Title FROM ALBUM ORDER BY Title

Question: What are all the album titles, in alphabetical order?
SQL:
SELECT Title FROM ALBUM ORDER BY Title

Question: Please list the name and id of all artists that have at least 3 albums in alphabetical order.
SQL:
SELECT T2.Name ,  T1.ArtistId FROM ALBUM AS T1 JOIN ARTIST AS T2 ON T1.ArtistId  =  T2.ArtistID GROUP BY T1.ArtistId HAVING COUNT(*)  >=  3 ORDER BY T2.Name

Question: What are the names and ids of artists with 3 or more albums, listed in alphabetical order?
SQL:
SELECT T2.Name ,  T1.ArtistId FROM ALBUM AS T1 JOIN ARTIST AS T2 ON T1.ArtistId  =  T2.ArtistID GROUP BY T1.ArtistId HAVING COUNT(*)  >=  3 ORDER BY T2.Name

Question: Find the names of artists that do not have any albums.
SQL:
SELECT Name FROM ARTIST EXCEPT SELECT T2.Name FROM ALBUM AS T1 JOIN ARTIST AS T2 ON T1.ArtistId  =  T2.ArtistId

Question: What are the names of artists who have not released any albums?
SQL:
SELECT Name FROM ARTIST EXCEPT SELECT T2.Name FROM ALBUM AS T1 JOIN ARTIST AS T2 ON T1.ArtistId  =  T2.ArtistId

Question: What is the average unit price of rock tracks?
SQL:
SELECT AVG(T2.UnitPrice) FROM GENRE AS T1 JOIN TRACK AS T2 ON T1.GenreId  =  T2.GenreId WHERE T1.Name  =  "Rock"

Question: Find the average unit price of tracks from the Rock genre.
SQL:
SELECT AVG(T2.UnitPrice) FROM GENRE AS T1 JOIN TRACK AS T2 ON T1.GenreId  =  T2.GenreId WHERE T1.Name  =  "Rock"

Question: What are the duration of the longest and shortest pop tracks in milliseconds?
SQL:
SELECT max(Milliseconds) ,  min(Milliseconds) FROM GENRE AS T1 JOIN TRACK AS T2 ON T1.GenreId  =  T2.GenreId WHERE T1.Name  =  "Pop"

Question: Find the maximum and minimum millisecond lengths of pop tracks.
SQL:
SELECT max(Milliseconds) ,  min(Milliseconds) FROM GENRE AS T1 JOIN TRACK AS T2 ON T1.GenreId  =  T2.GenreId WHERE T1.Name  =  "Pop"

Question: What are the birth dates of employees living in Edmonton?
SQL:
SELECT BirthDate FROM EMPLOYEE WHERE City  =  "Edmonton"

Question: Find the birth dates corresponding to employees who live in the city of Edmonton.
SQL:
SELECT BirthDate FROM EMPLOYEE WHERE City  =  "Edmonton"

Question: What are the distinct unit prices of all tracks?
SQL:
SELECT distinct(UnitPrice) FROM TRACK

Question: Find the distinct unit prices for tracks.
SQL:
SELECT distinct(UnitPrice) FROM TRACK

Question: How many artists do not have any album?
SQL:
SELECT count(*) FROM ARTIST WHERE artistid NOT IN(SELECT artistid FROM ALBUM)

Question: Cound the number of artists who have not released an album.
SQL:
SELECT count(*) FROM ARTIST WHERE artistid NOT IN(SELECT artistid FROM ALBUM)

Question: What are the album titles for albums containing both 'Reggae' and 'Rock' genre tracks?
SQL:
SELECT T1.Title FROM Album AS T1 JOIN Track AS T2 ON T1.AlbumId  =  T2.AlbumId JOIN Genre AS T3 ON T2.GenreID  =  T3.GenreID WHERE T3.Name  =  'Reggae' INTERSECT SELECT T1.Title FROM Album AS T1 JOIN Track AS T2 ON T1.AlbumId  =  T2.AlbumId JOIN Genre AS T3 ON T2.GenreID  =  T3.GenreID WHERE T3.Name  =  'Rock'

Question: Find the titles of albums that contain tracks of both the Reggae and Rock genres.
SQL:
SELECT T1.Title FROM Album AS T1 JOIN Track AS T2 ON T1.AlbumId  =  T2.AlbumId JOIN Genre AS T3 ON T2.GenreID  =  T3.GenreID WHERE T3.Name  =  'Reggae' INTERSECT SELECT T1.Title FROM Album AS T1 JOIN Track AS T2 ON T1.AlbumId  =  T2.AlbumId JOIN Genre AS T3 ON T2.GenreID  =  T3.GenreID WHERE T3.Name  =  'Rock'