2011-01-16 2 views
0

나는HTML 목록은 관련 두 테이블에 가입 한 많은

아래의 기본 스키마 감안할 때

tableOne (1)----------(*) tableTwo 

즉, 일대 다 관계를 통해 관련된 두 개의 테이블을 가지고

tableOne { 
    groupID int PK, 
    groupTitle varchar 
} 

tableTwo { 
    bidID int PK, 
    groupID int FK 
} 

은 두 개의 테이블이 합류에 따라 다음 레코드 세트를 얻을 고려 다음과 같이 내가 좋아하는 것 tableOne.groupID = tableTwo.groupID,

tableOne.groupID | tableOne.groupTitle | tableTwo.bidID | tableTwo.groupID 
________________________________________________________________________________ 

     1  | Physics Group   |  1   |  1 

     2  | Chemistry Group  |  2   |  2 

     2  | Chemistry Group  |  3   |  2 

     1  | Physics Group   |  4   |  1 

에 테이블이 같은 HTML 테이블에 기록이 설정된 나열하려면 :

tableOne.groupID | tableOne.groupTitle | tableTwo.bidID | tableTwo.groupID 
________________________________________________________________________________ 

     1  | Physics Group   |  1   |  1 

        | Physics Group   |  4   |  1 

     2  | Chemistry Group  |  2   |  2 

        | Chemistry Group  |  3   |  2 

나는이 SQL에서 수행 할 수 있는지 알아 내기에 관심이 있어요, 좋은 표준을 사용하여 HTML로 그러한 레코드 집합을 나열하는 방법을 찾아야합니다.

떠오르는 솔루션은 단순히 통해 반복되는

기록-설정하고 단일 행 <tr> 그룹화 같은 tableOne.groupID 모든 레코드를 나열하는 전초을 활용 - 또한 tableOne.groupID의 한 번 그 기록의 고유 식별자 목록 -그룹. 그러나 가능한 경우 HTML과 코드를 혼합하지 않으려 고하므로이 경로를 따르고 싶지 않습니다.

답변

0

ORDER BY 절을 사용하여 SQL 결과를 주문할 수 있습니다.

그래서 당신은 당신의 쿼리에서

ORDER BY tableOne.groupID ASC, tableTwo.bidID ASC 

를 추가하는 경우, 당신은 거기 절반 방법입니다.

다음 단계는 루프이고 ..

을 ASP 페이지에서 레코드를 인쇄 할뿐만 아니라 마지막 groupID이 현재 다른 경우를 보여 여부를 결정하기 위해, 확인
관련 문제