我想知道是否有可能从一个表中选择某些列,从第二个表中选择另一个列,这与第一个表中的非导入列有关.我必须从访问中获取此数据,并且不知道是否可以使用Access或SQL.
假设有以下表结构:
CREATE TABLE tbl_1 ( pk_1 int, field_1 varchar(25), field_2 varchar(25) ); CREATE TABLE tbl_2 ( pk_2 int, fk_1 int, field_3 varchar(25), field_4 varchar(25) );
您可以使用以下内容:
SELECT t1.field_1, t2.field_3 FROM tbl_1 t1 INNER JOIN tbl_2 t2 ON t1.pk_1 = t2.fk_1 WHERE t2.field_3 = "Some String"
关于Bill的帖子,有两种方法可以在SQL查询中创建JOIN:
隐式 - 使用查询的WHERE子句创建连接,并在FROM子句中指定多个表
显式 - 使用适当类型的JOIN子句创建连接(INNER,LEFT,RIGHT,FULL)
始终建议您使用显式JOIN语法,因为一旦查询变得更复杂,隐式连接就会出现问题.
例如,如果稍后向已使用FROM子句中引用的多个表的隐式连接的查询添加显式连接,则FROM子句中引用的第一个表对于显式连接表将不可见.