Sql 表中不在另一个表中的值

Sql 表中不在另一个表中的值,sql,teradata-sql-assistant,Sql,Teradata Sql Assistant,我有两张桌子,A和B A ID age 1 24 2 25 45 22 B ID school 34 school1 1 school2 我想选择在B中但不在A中的ID。 我写 这段代码返回的行数与使用内部联接而不是左外部联接时的行数完全相同。 我做错什么了吗?尝试使用不在中 Select * From A Where ID Not In ( Select ID From B ) 内部连接C作为bb上的cc.school=cc.school这是干什么用的?为什么不使用no

我有两张桌子,A和B

A
ID age
1   24
2   25
45  22

B 
ID school
34  school1
1   school2
我想选择在B中但不在A中的ID。 我写

这段代码返回的行数与使用内部联接而不是左外部联接时的行数完全相同。
我做错什么了吗?

尝试使用
不在

Select * From A Where ID Not In ( Select ID From B )

内部连接C作为bb上的cc.school=cc.school这是干什么用的?为什么不使用
notin
来选择
B
中不在
A
中的所有内容?我不明白,
JOIN
s的复杂性增加了吗?它是否也适用于要加入的键的不同名称的情况?在本例中,我有相同的(ID),但如果它们不同,是否可以使用where not In?我认为练习应该是关于连接的使用(例如Inhave ID1和ID2)Cc是另一个要连接的表,用于匹配学校和其他列“I have two tables,A和B”,“internal join C as Cc”。。。
Select * From A Where ID Not In ( Select ID From B )