我正在嘗試從我的電影資料庫中查詢結果,該資料庫回傳至少列出了 3 個演員的電影。我只需要得到titleid,我就可以從那里去。如何從s > 3titleid的表actors中提取。personid
我試過了:
SELECT titleid FROM actors WHERE COUNT(personid) > 3;
但這似乎是對 COUNT() 的誤用。有我可以使用的功能嗎?
架構:
CREATE TABLE actors(
titleid TEXT,
ordering INT,
personid TEXT,
category TEXT,
job TEXT,
characters TEXT
);
CREATE TABLE actornames(
personid TEXT,
name TEXT,
birth INT,
death INT,
profession TEXT,
knowntitles TEXT,
titleid TEXT,
ordering INT,
"personid:1" TEXT,
category TEXT,
job TEXT,
characters TEXT
);
CREATE TABLE ratings (titleid TEXT, rating DEC, votes INT);
CREATE TABLE movielist(title TEXT,titleid TEXT);```
uj5u.com熱心網友回復:
您可以在聚合查詢的子句中使用COUNT()聚合函式:HAVING
SELECT titleid
FROM actors
GROUP BY titleid
HAVING COUNT(*) >= 3;
actors萬一演員可能在同一部電影中多次出現,您應該計算不同personid的 s:
SELECT titleid
FROM actors
GROUP BY titleid
HAVING COUNT(DISTINCT personid) >= 3;
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/463246.html
上一篇:我將如何設計這個資料庫?
下一篇:創建觸發器時的SQLite條件
