了解SQL查询:如何return国外table的信息
Understanding SQL queries: how to return the foreign table's information
我不太明白 SQL 查询在使用关系时是如何工作的;
我正在构建一个基于数学的小型闪存卡应用程序。为了效率和学习,我希望没有重复的问题和答案。
因此,我们最终得到以下表格;
addition
questionId | answerId | info
question
id | num_a | num_b
answer
id | res
我如何return[num_a, num_b, res, info]
?
如何 select num_a < x
和 info = y
的加法题?
您可以加入:
select qu.num_a, qu.num_b, an.res, ad.info
from addition ad
inner join question qu on qu.id = ad.questionid
inner join answer an on an.id = qd.answerid
然后您可以使用 where
子句设置您想要的过滤:
where qu.num_a < x and ad.info = y
当然 x
和 y
需要是正确的文字值,其数据类型与 table 列的数据类型相匹配。
只是为了扩展 GMB 对您的第二个查询的回答 - 您可以使用 WHERE 子句,例如:
select qu.num_a, qu.num_b, an.res, ad.info
from addition ad
inner join question qu on qu.id = ad.questionid
inner join answer an on an.id = qd.answerid
WHERE qu.num_a < x AND ad.info = y
我不太明白 SQL 查询在使用关系时是如何工作的;
我正在构建一个基于数学的小型闪存卡应用程序。为了效率和学习,我希望没有重复的问题和答案。
因此,我们最终得到以下表格;
addition
questionId | answerId | info
question
id | num_a | num_b
answer
id | res
我如何return[num_a, num_b, res, info]
?
如何 select num_a < x
和 info = y
的加法题?
您可以加入:
select qu.num_a, qu.num_b, an.res, ad.info
from addition ad
inner join question qu on qu.id = ad.questionid
inner join answer an on an.id = qd.answerid
然后您可以使用 where
子句设置您想要的过滤:
where qu.num_a < x and ad.info = y
当然 x
和 y
需要是正确的文字值,其数据类型与 table 列的数据类型相匹配。
只是为了扩展 GMB 对您的第二个查询的回答 - 您可以使用 WHERE 子句,例如:
select qu.num_a, qu.num_b, an.res, ad.info
from addition ad
inner join question qu on qu.id = ad.questionid
inner join answer an on an.id = qd.answerid
WHERE qu.num_a < x AND ad.info = y