관련 레코드의 하위 보고서가 포함 된 Access 2003에서 보고서를 만들고 있습니다. 하위 보고서에서 상위 2 개 레코드 만 원합니다. 하위 보고서의 쿼리에 "TOP 2"를 추가하면 링크 필드를 필터링하기 전에 상위 두 레코드를 선택하는 것으로 보입니다. 해당 링크 필드에 적용되는 레코드 중 상위 두 레코드 만 얻으려면 어떻게합니까? 감사.Access 하위 보고서에서 top 절 사용
답변
나는이 개 제안이있어 : 매개 변수로 쿼리에
1) 부모 폼에 마스터 필드 (패스) (당신은))
이 직접뿐만 아니라 부모 폼에 당신을 필드를 참조 할 수있다 Access에서 밖으로 가짜 rownumbers하고, 오직 ROWNUM < = 2. 예로 제한 할 수
SELECT o1.order_number, o1.order_date,
(SELECT COUNT(*) FROM orders AS o2
WHERE o2.order_date <= o1.order_date) AS RowNum
FROM
orders AS o1
ORDER BY o1.order_date
가되지 않을 수 있으므로,
그러나, 이런 종류의 질의가 읽기 전용 레코드 집합을 반환 할 수 있습니다 (http://groups.google.com/group/microsoft.public.access.queries/msg/ec562cbc51f03b6e?pli=1에서) 보고서 대신 양식에서 동일한 작업을 수행해야하는 경우 충당됩니다. 이 같은 쿼리를 사용하지 않도록하여 하위 보고서에 사용할 수
select
Order.ID,
Order.Customer_ID,
Order.PlacementDate
from
Order
where
Order.ID in
(
select top 2
RecentOrder.ID
from
Order as RecentOrder
where
RecentOrder.Customer_ID = Order.Customer_ID
order by
RecentOrder.PlacementDate Desc
)
:
아래 샘플 쿼리 (대신 모든 주문의) 각 고객에 대한 가장 최근의 주문 한 쌍을 반환하도록되어 임시 테이블
경고 샘플 :이 샘플 쿼리를 테스트하지 않았으며이 쿼리가 Jet 데이터베이스에 대해 실행되는 보고서에 대해 작동하는지 모릅니다. 데이터를 저장하기 위해 Access를 사용하지 않으며 우리는 전염병 :-). 하지만 SQL Server에 반대해야합니다.
나는 또한 당신의 경우에 그것이 얼마나 잘 수행 될지 모른다. 늘 그렇듯이, 그것은 다릅니다. :-)
BTW, 성능 및 해킹에 대해 말하기. 나는 임시 테이블의 사용을 해킹이라고 생각하지 않을 것이다. 최악의 경우,이 트릭은 보고서에 대한보다 복잡한 인터페이스로 간주 될 수 있습니다. :-) 그리고 이러한 임시 테이블을 사용하는 것은 실제로 성능을 향상시키는 좋은 방법 중 하나 일 수 있습니다. 그러니 서두르지 마세요. :-)
이 대답을 수용해서는 안됩니까? JetEngine과 함께 작동합니다. –
- 1. Microsoft Access 2007 - 보고서에서 사용 된 쿼리보기?
- 2. 하위 보고서에서 공유 데이터 집합 사용
- 3. MS-Access 보고서에서 완료된 작업의 백분율 계산
- 4. SSRS - SSRS 보고서에서 매크로 사용
- 5. SQL 서버는 함께 "선택은 고장"2000 TOP 절 SQL Server 2000의 개발자 버전을 사용
- 6. 하위 보고서에서 iReport의 기본 보고서로 값을 반환
- 7. Jasper Reports - 하위 보고서에서 pageHeader/columnHeader 제거
- 8. SQL Server에서 With 절 사용
- 9. 데이터베이스 쿼리에서 IN 절 사용
- 10. select_related 및 extra 절 사용
- 11. rdlc 보고서에서 하위 리포트 및 하위 보고서에서 가능한 많은 하위 보고서 중 하나를 프로그래밍 방식으로 선택할 수 있습니까?
- 12. 만이 아닌 절
- 13. Microsoft Access 보고서에서 두 가지 계산의 차이 얻기
- 14. SSRS 2008 - 하위 보고서를 포함하면 주 보고서에서 데이터가 반환되지 않습니다.
- 15. 액세스 보고서에서 쿼리 매개 변수 사용
- 16. DynamicJasper의 하위 보고서 사용
- 17. SQL Server의 TOP 2보다 TOP 2가 빠릅니까?
- 18. MDX TOP 1 - CUBE에서 TOP 1을 반환하십시오.
- 19. tsql - 매개 변수로 내부 저장 프로 시저 사용 where 절
- 20. 절
- 21. 절
- 22. 절
- 23. IN 절 최적화
- 24. NHibernate - 일대일 매핑에서 WHERE 절 사용
- 25. 사용 인덱스 있습니까 WHERE 절 오라클에서
- 26. SQLite 및 Android와 AND 절 사용
- 27. WordPress : 사용자 지정 필드에서 Where 절 사용
- 28. Entity Framework에서 플래그 사용 Where 절
- 29. 원시 SQL 쿼리에서 IN 절 사용
- 30. 저장 프로 시저에 그룹 절 사용
당신의 솔루션이 효과가 있다고 말할 수는 없지만 보고서에서는 읽기 전용 레코드 세트를 반환하는 것에 대해 걱정할 필요가 없습니다. :) –
D.F. 당신은 절대적으로 옳습니다. 나는 당시 양식에 대해 생각하고있었습니다. – BIBD
CodeSlave : 귀하의 의견을 보내 주셔서 감사합니다. 나는 모든 관련 레코드 (각 유형의 상위 2 개)를 테이블에 넣고 하위 보고서의 레코드 소스로 사용하는 보고서를 열기 전에 해결 방법을 사용했습니다. 그것은 다소 해킹이지만 일을합니다. – pro3carp3