2011-01-26 4 views
1

데이터를 VB.Net DataGrid로 반환하도록 쿼리를 설정하려고합니다.MySQL이 행 결과를 새 열로 결합합니다.

Date  Sponsor Match_no  Team 
--------------------------------------- 
1-1-11  Nike  1   Tigers 
1-1-11  Nike  1   Bears 
2-1-11  Crisco  2   Llamas 
2-1-11  Crisco  2   Tigers 

롤 그것을 새 열로 매치 노에 예를 들어

: 나는 좀 아래와 같이 새로운 열에 결과를 롤업하고 싶다.

Date  Sponsor Match_no  Teams_playing 
--------------------------------------------------- 
1-1-11 Nike   1   Tigers vs Bears 
2-1-11 Crisco  2   Llamas vs Tigers 

나는 "GROUP_CONCAT"를 사용하여 시도하지만 어떤 이유에 관계없이 match_no의 컬럼에 팀에 대한 전체 목록을 겹쳐서.

Dates  Sponsors   Match   Team 
------  --------   -------  -------- 
Date_id  Sponsor_id   Match_id  Team_id 
Date   Sponsor_name  Match_no  Team_name 
           Sponsor_id  Match_id 
+0

당신은 마지막 부분을 포함하는 것을 잊었다 :

원래의 질문에 대한

쿼리가

select d.date, s.sponsor_name, m.match_no, group_concat(teams_playing separator ' vs ') Teams_playing from match m inner join dates d on d.date_id = m.date_id inner join sponsors s on s.sponsor_id = m.sponsor_id inner join team t on t.match_id = m.match_id group by m.match_id, d.date, s.sponsor_name, m.match_no 

참고가 될 것입니다. –

답변

1

시도 :

SELECT m.date, 
     m.sponsor, 
     m.match_no, 
     GROUP_CONCAT(m.team, SEPARATOR ' vs ') 
    FROM MATCH_NO m 
GROUP BY m.date, m.sponsor, m.match_no 
0

귀하의 테이블 구조가 의심스러운이 예에서

4 개 테이블이있을 것입니다. 날짜는 경기와 관련이 없습니다.

match_team 
----------- 
match_id 
team_id 

또는 오직 그럼 그냥

match 
--------- 
match_id 
Match_no 
sponsor_id 
date_id 
team_id_a 
team_id_b 

일반적으로, 하나는 날짜 테이블을 생성하지 않을 일치 당 두 팀,있을려고하는 경우 : 팀 다리와 별도의 테이블에 있어야합니다 ID와 날짜 만 있으면됩니다. 데이터 이동 색인을 날짜별로 색인 생성하거나 검색하는 데 도움이되지 않습니다. GROUP_CONCAT

+0

감사합니다. 엉망으로 생각해서 죄송합니다. 실제로 게시 된 것 같지 않습니다. – dMO

+0

이 기능을 사용하셨습니까? 진드기를 클릭하여 답변으로 수락 할 수 있습니다. – RichardTheKiwi

+0

죄송합니다 couldnt 그것을 찾아 주셔서 감사합니다! – dMO

관련 문제