[英]SQL SELECT FROM TWO TABLES INNER JOIN
I am trying select from my Album
and ArtistBand
Table and display the Name
and Bandname
in alphabetical order. 我正在尝试从“
Album
和“ ArtistBand
表中进行选择, Bandname
字母顺序显示“ Name
和“ Bandname
。 When in try to use the select statement below it shows up with all the albums on each band. 尝试使用下面的select语句时,它会显示在每个乐队的所有专辑中。 Any help would be appreciated project for school.
任何帮助将是赞赏学校的项目。
CREATE TABLE ArtistBand
(
ArtistID INT AUTO_INCREMENT PRIMARY KEY,
BandName VARCHAR(255) NOT NULL,
NameOfMembers VARCHAR(255),
NumberOfMembers INT
);
CREATE TABLE Genre
(
GenreID INT AUTO_INCREMENT PRIMARY KEY,
GenreType VARCHAR(255) NOT NULL
);
CREATE TABLE Album
(
AlbumID INT AUTO_INCREMENT PRIMARY KEY,
Name VARCHAR (255) NOT NULL,
ReleaseDate DATE NOT NULL,
Producers VARCHAR (255),
ArtistID INT,
GenreID INT,
FOREIGN KEY(ArtistID) REFERENCES ArtistBand(ArtistID),
FOREIGN KEY (GenreID) REFERENCES Genre (GenreID)
);
CREATE TABLE LookUp
(
AlbumID INT,
GenreID INT,
FOREIGN KEY (AlbumID) REFERENCES Album (AlbumID),
FOREIGN KEY (GenreID) REFERENCES Genre (GenreID)
);
INSERT INTO ArtistBand
VALUES
(NULL,'ACDC','BrianJohnson',4),
(NULL,'Metallica','JamesHeitfield',4),
(NULL,'TheBeatles','JohnLennon',4),
(NULL,'JayZ','ShawnCarter',1),
(NULL,'DangerMouse','BrianBurton',1);
INSERT INTO Album
VALUES
(NULL,'BackInBlack','1980-01-01',NULL,NULL,NULL),
(NULL,'TheBlackAlbum','1991-01-01',NULL,NULL,NULL),
(NULL,'WhiteAlbum','1968-01-01',NULL,NULL,NULL),
(NULL,'TheBlackAlbum','2003-01-01',NULL,NULL,NULL),
(NULL,'TheGreyAlbum','2004-01-01',NULL,NULL,NULL);
INSERT INTO Genre
VALUES
(NULL,'HeavyMetal'),
(NULL,'HeavyMetal'),
(NULL,'Pop'),
(NULL,'HipHop'),
(NULL,'HipHop');
SELECT
ArtistBand.BandName, Album.Name
FROM
ArtistBand
JOIN
Album
ORDER BY
ArtistBand.BandName;
You need to add condition on your join, that the ArtistID
should be the same in both tables. 您需要在连接上添加条件,即两个表中的
ArtistID
应该相同。 So your query will look like below: 因此,您的查询将如下所示:
SELECT ArtistBand.BandName, Album.Name
FROM ArtistBand
JOIN Album ON ArtistBand.ArtistID = Album.ArtistID
ORDER BY ArtistBand.BandName;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.