[英]SQL: Query Entire Database
我是SQL的完整入門者。 我正在使用一個程序來查詢數據庫,然后處理結果。 默認查詢為:
SELECT *
FROM data,
questions,
users
where users.U_Id = data.Subj_Id
and data.Subj_Id between 1 and 10
and data.Q_Id = questions.Q_Id
and questions.Q_Id between 1 and 10
order by Subj_Id;
我想查詢每個Subj_Id
和每個Q_Id
。 我不知道這兩個都有多少,不同的主題有不同數量的問題。 我應該如何更改以上查詢?
您可以像這樣重寫上面的查詢。
select *
from
data
inner join
users on users.U_Id = data.Subj_Id
inner join
questions on data.Q_Id = questions.Q_Id
where data.Subj_Id between 1 and 10
and questions.Q_Id between 1 and 10
order by Subj_Id;
通過將表之間的聯接與數據上的過濾器分開,可以使其更加清晰。 因此,要查詢整個數據庫,只需從上面刪除where
子句即可。
select *
from
data
inner join
users on users.U_Id = data.Subj_Id
inner join
questions on data.Q_Id = questions.Q_Id
order by Subj_Id;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.