【发布时间】:2018-05-13 15:21:22
【问题描述】:
我正在尝试进行查询,以显示所有电影详细信息以及该电影售出的总票数。
这是我的桌子:
https://imgur.com/Tgu3XrA
到目前为止,这是我的代码:
SELECT Movies.MovieID, Title, Released, Runtime, Classification,
SUM(Tickets.SessionID)
FROM Movies
LEFT JOIN Sessions ON Movies.MovieID = Movies.MovieID
LEFT JOIN Tickets ON Movies.MovieID = Tickets.SessionID
GROUP BY Movies.MovieID
ORDER BY Released
结果如下: https://imgur.com/a/mRKYjNG
这是数据库的概要;
BEGIN TRANSACTION;
DROP TABLE IF EXISTS "Movies";
CREATE TABLE 'Movies' ('MovieID' INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, 'Title' TEXT,'Released' INTEGER, 'Runtime' INTEGER,'Classification' TEXT, 'Plot' TEXT);
DROP TABLE IF EXISTS "Tickets";
CREATE TABLE 'Tickets' ('TicketID' INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, 'SessionID' INTEGER,'PricePaid' REAL,'TimeStamp' INTEGER);
DROP TABLE IF EXISTS "MemberTickets";
CREATE TABLE 'MemberTickets' ('TicketID' INTEGER PRIMARY KEY NOT NULL,'MemberID' INTEGER,'OnlinePurchase' INTEGER);
DROP TABLE IF EXISTS "MovieGenre";
CREATE TABLE 'MovieGenre' ('MovieID' INTEGER NOT NULL, 'Genre' TEXT NOT NULL, PRIMARY KEY ('MovieID', 'Genre'));
DROP TABLE IF EXISTS "Sessions";
CREATE TABLE 'Sessions' ('SessionID' INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, 'MovieID' INTEGER,'SessionTime' INTEGER, 'NormalPrice' REAL, 'SeatsAvailable' INTEGER, 'RoomID' INTEGER);
DROP TABLE IF EXISTS "Members";
CREATE TABLE 'Members' ('MemberID' INTEGER primary key autoincrement ,FirstName TEXT, LastName TEXT, Postcode TEXT );
COMMIT;
【问题讨论】:
-
请发送minimal reproducible example。 IE。通过显示几行“create table...”和“insert...”来提供定制的玩具数据库。
标签: sql database sqlite join count