레코드가 다음과 같이 있습니다
이름 문항 번호
홍길동 1 2
홍길동 2 4
홍길동 3 6
...
이걸 옆으로 붙여서
홍길동 1 2 2 4 3 6
이렇게 만들고 싶습니다...
어떻게 해야할지요. 실제로는 한명당 문항이 한 5~7개 정도 됩니다..
SELECT name, MAX( result ) FROM (
SELECT name, CAST( IF( @prev = name, @str := CONCAT( @str , q, a ) , @str := CONCAT( q, a ) ) AS CHAR ) AS result, @prev := name FROM
( SELECT name, q, a FROM `b` ORDER BY name ASC ) x,
( SELECT @str := '', @prev := NULL ) y
) z GROUP BY name
정말 말도 안되는 쿼리지만 되긴 됩니다. 더 좋은 방법 있는지는 잘 모르겠습니다.