Tôi muốn đặt hàng các kết quả trong hàm GROUP_CONCAT. Vấn đề là, rằng sự lựa chọn trong GROUP_CONCAT chức năng là chức năng khác, như thế này (tưởng tượng chọn):Đặt hàng trong một MySQL GROUP_CONCAT có chức năng trong đó
SELECT a.name,
GROUP_CONCAT(DISTINCT CONCAT_WS(':', b.id, c.name) ORDER BY b.id ASC) AS course
FROM people a, stuff b, courses c
GROUP BY a.id
Tôi muốn có được một kết quả tương tự (theo yêu cầu của b.id):
michael 1:science,2:maths,3:physics
nhưng tôi nhận được:
michael 2:maths,1:science,3:physics
có ai biết làm thế nào tôi có thể đặt hàng bằng cách b.id trong group_concat của tôi ở đây?
[GROUP_CONCAT] (http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html#function_group-concat) hỗ trợ riêng 'ORDER BY' khoản ... Không biết những gì người dùng định nghĩa chức năng là, hoặc không, sẽ không giúp chúng tôi để có thể giúp bạn. –
Nó giống như tôi đã viết: chức năng "concat_ws" trong hàm "group_concat". Tôi chưa bao giờ nói đó là một hàm do người dùng định nghĩa. – acme
Không rõ cách viết giải pháp hợp lệ vì cấu trúc bảng, nội dung và mối quan hệ giữa các bảng không được chỉ định (nghĩa là không có thông số tham gia). – outis