因此,我整晚都在這樣做 - 不能完全理解我的作業,可悲的是我的教授在週末不能上班。這裏是:找到每個城市中顯示的最新電影的標題。顯示按城市名稱和電影標題排序的城市名稱和最新電影標題。Oracle SQL問題
這裏是我的表格聲明(並感謝大家今晚幫助我,我欠你一大筆時間)。
CREATE TABLE Theatres (
Name varchar2(50) not null,
City varchar2(50) not null,
State varchar2(50) not null,
Zip number not null,
Phone varchar2(50) not null,
PRIMARY KEY (Name)
);
CREATE TABLE Movies (
Title varchar2(100) not null,
Rating NUMBER not null,
Length NUMBER not null,
ReleaseDate date not null,
PRIMARY KEY (Title),
CHECK (Rating BETWEEN 0 AND 10),
CHECK (Length > 0),
CHECK (ReleaseDate > to_date('1/January/1900', 'DD/MONTH/YYYY'))
);
CREATE TABLE ShownAt (
TheatreName varchar2(50) not null,
MovieTitle varchar2(100) not null,
PRIMARY KEY (TheatreName, MovieTitle),
FOREIGN KEY (TheatreName) REFERENCES Theatres(Name),
FOREIGN KEY (MovieTitle) REFERENCES Movies(Title)
);
這裏是我到目前爲止(基於其他的StackOverflow成員的幫助下,從前面的問題):
SELECT m.title AS m_title,
t.city,
m.title
FROM THEATRES t
JOIN SHOWNAT sa ON sa.theatrename = t.name
JOIN MOVIES m ON m.title = sa.movietitle
GROUP BY t.city, m.title
ORDER BY m_title DESC
顯然,我的問題是在宣佈最新的電影 - 我怎麼能解釋這種?我通過實例學習 - 一旦有人向我展示了一種方式,我可以將其應用於其他任何事情 - 請幫助。
那麼你的問題是什麼? – duffymo 2010-09-12 03:13:53
我的問題是我不確定如何解釋在每個城市播放的最新電影。不知道如何在SQL語句中聲明 – 2010-09-12 03:15:35
您需要'ORDER BY ReleaseDate',然後選擇結果中的前N行以顯示N個最新電影。 – 2010-09-12 03:37:34