2014-03-07 4 views
0

나는로 설정 샘플로 table_B라는 이름의 테이블은 다음과 같습니다 여기 MySQL Join 및 Group_Concat 열을 주문하는 방법?

+-serviceID-+-priceID-+-processOrder-+ 
| 001 | 003 |  03  | 
+-----------+---------+--------------+ 
| 001 | 024 |  02  |   
+-----------+---------+--------------+ 
| 001 | 001 |  01  |   
+-----------+---------+--------------+ 

내 쿼리 문입니다 :

$query_string = ' 
    SELECT services.*, GROUP_CONCAT(prices.priceID) AS priceID 
    FROM table_A AS services 
    INNER JOIN table_B AS prices ON services.serviceID = prices.serviceID 
    WHERE services.serviceID = "' . $serviceID . '" 
    GROUP BY prices.serviceID 
    LIMIT 1 
'; 
$result = mysqli_query($link, $query_string); 

결과 [ 'priceID를'] 행 $입니다 string(11) "001,003,024"

$ row [ 'priceID']에서 결과 문자열을 processOrder 열에 따라 정렬하려면 어떻게해야합니까? 당신은 괄호 안에 주문을 설정할 수 있습니다

GROUP_CONCAT([DISTINCT] expr [,expr ...] 
     [ORDER BY {unsigned_integer | col_name | expr} 
      [ASC | DESC] [,col_name ...]] 
     [SEPARATOR str_val]) 

:

내가 string(11) "001,024,003"

답변

2

로 $ 행 [ 'priceID를'] 반환하려고은 GROUP_CONCAT syntax에서보세요.

+0

감사합니다. @zealot. 그것은 완벽하게 작동했습니다. –