Tôi có thể đang có khoảnh khắc không có trí tuệ.MySQL GROUP_CONCAT nhiều trường
Tôi muốn trả về một chuỗi số sử dụng GROUP_CONCAT từ hai trường trong cơ sở dữ liệu của tôi. Tôi đã thực hiện việc này cho đến nay bằng cách sử dụng các mục sau:
SELECT t_id,
CONCAT(GROUP_CONCAT(DISTINCT s_id),',',IFNULL(GROUP_CONCAT(DISTINCT i_id),'')) AS all_ids
FROM mytable GROUP BY t_id
Điều này làm việc tốt nhưng nếu i_id là NULL thì tất nhiên tôi nhận được dấu phẩy không cần thiết. Có cách nào tốt hơn để làm điều này vì vậy tôi không kết thúc với một dấu phẩy ở cuối nếu i_id là NULL?
Điều đó sẽ thay thế bất kỳ dấu phẩy kép (,,) với một trong những đơn (,) nhưng đó không phải là vấn đề của tôi . Nếu i_id là null tôi kết thúc với một kết quả như vậy 2,6,8, khi những gì tôi cần là 2,6,8 –
'CONCAT_WS' sẽ làm việc cho bạn. – Omesh
Cảm ơn. Điều đó hoạt động rất tốt. –