繁体   English   中英

SQLite3从两个不同的表中选择

[英]SQLite3 Select from two different Tables

我想使用SQLite3创建一个新表,该表选择专辑的名称-然后从另一个表中,抓取所有具有albumID外键的曲目,并对它们进行计数。 是否有捷径可寻? 谢谢

        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;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM