
MS Access 2013에 약간의 문제가 있습니다. 한 테이블에 필요한 데이터를 표시하는 쿼리를 만드는 방법을 알 수 없습니다. 데이터 구조는 다음과 같이 설명할 수 있습니다.
USERS
ID Name
001 John
002 Sarah
003 Miles
RATING
UserID Year Rating
001 2012 79
001 2013 89
002 2012 78
002 2013 75
003 2012 74
003 2013 70
테이블은 사용자 ID 필드와 연결됩니다. 다음 데이터를 반환하려면 쿼리가 필요합니다.
Name Rating in 2012 Rating in 2013
John 79 89
Sarah 78 75
Miles 74 70
MS Access 2013에서는 가능한가요? 쿼리 생성자의 기준은 모든 열에 동시에 적용되는 것으로 보이며 연도별로 다르게 필터링할 수 없습니다.
답변1
이를 달성하는 한 가지 방법은 연도별로 등급을 필터링하는 두 개의 초기 쿼리를 만드는 것입니다.
SELECT UserId, Year, Rating
FROM Rating
WHERE (((Rating.Year)=2012));
그리고
SELECT UserId, Year, Rating
FROM Rating
WHERE (((Rating.Year)=2013));
그런 다음 최종 쿼리는 다음과 같습니다.
SELECT Users.Name, Rating2012.Rating, Rating2013.Rating
FROM Users
LEFT JOIN Rating2012 ON Users.ID = Rating2012.UserId
LEFT JOIN Rating2013 ON Users.ID = Rating2013.UserID;