[英]MS Access Multiple SELECT Query
I have three tables: 我有三个表:
Fields 领域
ID | FarmID | FIELD_NUM | Year
Farms 农场
ID | ClientID
Clients 客户群
ID | CLIENT_NUM
I have a simple query to get CLIENT_NUM from the Clients table: 我有一个简单的查询,可从Clients表中获取CLIENT_NUM:
SELECT
(SELECT CLIENT_NUM FROM Clients
WHERE ID = (SELECT ClientID FROM Farms WHERE ID = FarmID)) AS CID
FROM Fields
WHERE Year = 2014 AND FIELD_NUM = '28-2'
In SQL Server, this works just fine; 在SQL Server中,这很好用。 however, in Microsoft Access it takes forever.
但是,在Microsoft Access中它需要永远。 Is there a better way to run this query?
有没有更好的方法来运行此查询?
Instead of using sub-queries, try using JOIN
. 代替使用子查询,尝试使用
JOIN
。 Depending on how Access optimizes the query it could help with performance, but also it helps a lot with readability: 根据Access优化查询的方式,它可能有助于提高性能,但对可读性也有很大帮助:
SELECT Clients.CLIENT_NUM as CID
FROM (Clients INNER JOIN Farms ON Clients.ID = Farms.ClientID)
INNER JOIN Fields ON Farms.ID = Fields.FarmID
WHERE Fields.Year = 2014 AND Fields.FIELD_NUM = '28-2'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.