2013-11-14 2 views
0

내가 예약MySQL의 열 값

Bookingid Customer 

    1   Steve 
    2   John 

에 대한 MySQL의 테이블과 승객

Bookingid Passenger 

    1  Steve 
    1  Gary 
    1  Tom 
    2  John 
    2  Chris 
    2  Thomas 

첫 번째 테이블과 승객에서 bookingid을 얻을 수있는 가장 좋은 쿼리는 무엇인가에 대한 다른 테이블을 행하기 위해 가져 오기 두 번째 테이블을 한 행에?

Bookingid Passenger1 Passenger2 Passenger3 
    1   Steve  Gary  Tom 
    2   John  Chris  Thomas 
+1

있습니까 고정 또는 가변 PassengerN''의 수? –

+0

@JorgeCampos 승객 수는 변수 – krish211

+0

입니다. 따라서 주어진 답변을보십시오. 피벗 테이블이 필요합니다. 내 의견으로는, mysql을 직접 통하는 고통스러운 일이다. –

답변

0

당신은 대부분의 경우 PIVOT TABLE 느릅 나무없이이 작업을 수행 할수 없어 행에 열 번호를 고정했다.

이 하나가 automatticaly http://www.artfulsoftware.com/infotree/qrytip.php?id=523

을 할 수있는 절차를 가지고하지만 당신은 당신에게 작업 할 뭔가를 줄 것이다 MySQL의 느릅 나무의 기능을 가지고있다. 그 당신에게 충분히 좋은 경우에

1 Steve, Gary, Tom 
2 John, Chris, Thomas 

이 쿼리입니다 : 당신은이 Passenger1..PassengerN이 같은 결과를 볼 수 있습니다 볼 수 없습니다

select passengers.Bookingid, group_concat(bookings.Customer) 
    from bookings inner join passengers on (bookings.Bookingid = passengers.Bookingid) 
group by passengers.Bookingid