我不知道这个问题是多么合法,我一直在考虑这个问题。 假设我有2个表,表A和表B. 在表A中我们有
TableA
--------
ID int not null PK
ANOTHER_COLOLUMN String null,
....
TABLE_B_ID (FK, int, not null)
和表B
TableB
-------
ID int not null PK,
....
....
我的问题是,我们是否总是需要
select * from TableA inner join TableB on TableA.id = TableB.id
如果我只是使用TableA(我根本不接触tableB)?
答案 0 :(得分:0)
您的查询
select * from TableA inner join TableB on TableA.id = TableB.id
将仅返回表A中具有表B中相关记录的那些记录。
在您的情况下,您需要使用以下队列:
select * from TableA
并且无论是否有外键。
答案 1 :(得分:0)
没有。如果您没有使用TableB中的数据,则无需使用FK或加入。