SQLite3从两个不同的表中选择
我想使用SQLite3创建一个新表,该表选择相册的名称,然后从另一个表中,获取所有具有albumID外键的曲目,并对它们进行计数。有没有一个简单的方法可以做到这一点?谢谢SQLite3从两个不同的表中选择,sql,sqlite,Sql,Sqlite,我想使用SQLite3创建一个新表,该表选择相册的名称,然后从另一个表中,获取所有具有albumID外键的曲目,并对它们进行计数。有没有一个简单的方法可以做到这一点?谢谢 CREATE TABLE Album ( AlbumID INTEGER PRIMARY KEY NOT NULL, Title TEXT NOT NULL, ArtistID INTEGER NOT NULL, FOREIGN KEY (
CREATE TABLE Album
(
AlbumID INTEGER PRIMARY KEY NOT NULL,
Title TEXT NOT NULL,
ArtistID INTEGER NOT NULL,
FOREIGN KEY (ArtistID) REFERENCES Artist (ArtistID)
ON DELETE NO ACTION ON UPDATE NO ACTION
);
CREATE TABLE Track
(
TrackID INTEGER PRIMARY KEY NOT NULL,
Name TEXT NOT NULL,
AlbumID INTEGER,
MediaTypeID INTEGER NOT NULL,
GenreID INTEGER,
Composer TEXT,
Millisecond INTEGER NOT NULL,
Byte INTEGER,
UnitPrice REAL NOT NULL,
FOREIGN KEY (AlbumID) REFERENCES Album (AlbumID)
ON DELETE NO ACTION ON UPDATE NO ACTION,
FOREIGN KEY (GenreID) REFERENCES Genre (GenreID)
ON DELETE NO ACTION ON UPDATE NO ACTION,
FOREIGN KEY (MediaTypeID) REFERENCES MediaType (MediaTypeID)
ON DELETE NO ACTION ON UPDATE NO ACTION
);
这将实现您想要的:
SELECT a.Title, COUNT(a.Title)
FROM Album AS a
JOIN Track AS b ON b.AlbumID = a.AlbumID
GROUP BY a.AlbumID
ORDER BY a.Title;
提示:
加入
。这就是从多个表中获取信息的方式。谢谢!这是可行的,但是有没有办法保持专辑标题的原始宽度?你说的原始宽度是什么意思?文本类型的宽度未指定。