在 SQL 中是否可以同时调用具有不同数据的两个不同的 table

is it possible in SQL to call two difrent table with difrent data at the same time

所以基本上我需要的是同时获得两个 table,然后使用第一个 table 中的条件,我想将其应用于第二个 如果不可能,我需要两次调用 SELECT 吗? 这段代码对吗? 确定 2012 年发行的所有电影的平均评分

SELECT AVG(rating),year FROM ratings , movies
   WHERE year = 2012;
//these are the tables that i have 

CREATE TABLE movies (
                    id INTEGER,
                    title TEXT NOT NULL,
                    year NUMERIC,
                    PRIMARY KEY(id)
                );
CREATE TABLE stars (
                movie_id INTEGER NOT NULL,
                person_id INTEGER NOT NULL,
                FOREIGN KEY(movie_id) REFERENCES movies(id),
                FOREIGN KEY(person_id) REFERENCES people(id)
            );
CREATE TABLE directors (
                movie_id INTEGER NOT NULL,
                person_id INTEGER NOT NULL,
                FOREIGN KEY(movie_id) REFERENCES movies(id),
                FOREIGN KEY(person_id) REFERENCES people(id)
            );
CREATE TABLE ratings (
                movie_id INTEGER NOT NULL,
                rating REAL NOT NULL,
                votes INTEGER NOT NULL,
                FOREIGN KEY(movie_id) REFERENCES movies(id)
            );
CREATE TABLE people (
                id INTEGER,
                name TEXT NOT NULL,
                birth NUMERIC,
                PRIMARY KEY(id)
            );

我想你想要一个 JOIN 和一个聚合函数:

SELECT AVG(r.rating) avg_rating_2012
FROM ratings r
INNER JOIN movies m on m.id = r.movie_id
WHERE m.year = 2012;

如果你想要一次性使用所有年份,那么使用 GROUP BY:

SELECT m.year, AVG(r.rating) avg_rating
FROM ratings r
INNER JOIN movies m on m.id = r.movie_id
GROUP BY m.year;