2014-10-22 2 views
2

MS Access 2013에서 쿼리 용 임시 테이블을 만들 수 있습니까? 또는 모든 것이 중첩 된 쿼리에서 수행되어야합니다. 예를 들어MS 액세스의 임시 테이블

:

Select 
FacilityID 
,ActivityID 
ClientID 
Into 
#Clients 
From 
Activities 

그런 다음 이

Select 
FacilityID 
,Count(ClientID) Over (partition By ActivityID) as ActivityCount 
Into 
#Final 
From 
#Clients 

같은 것을 할이 simplified-되었습니다하지만 당신은 아이디어가 있어야한다.

감사합니다.

답변

4

예 VBA 코드에서 쿼리를 실행하면 Access에서 가능합니다. 다른 쿼리의 행 소스로 Update 또는 Make Table과 같은 동작 쿼리를 사용할 수 없으므로 소스 테이블을 먼저 만들어야합니다.

Dim db as DAO.Database 
Set db = CurrentDb() 
db.Execute _ 
     "SELECT FacilityID, ActivityID, ClientID " & _ 
     "INTO Clients " & _ 
     "FROM Activities;", _ 
     dbFailOnError 
db.execute _ 
     "SELECT FacilityID, ... " & _ 
     "INTO Final " & _ 
     "FROM Clients;", _ 
     dbFailOnError 

합니다 (COUNT ... OVER (PARTITION BY ...) 코드 액세스 SQL은 그 구조를 지원하는 잘못된 인상을 방지하기 위해 제거되었습니다. 그것은하지 않습니다.)