REGEXP
hàm chỉ trả về 0 hoặc 1. Bạn sẽ phải sử dụng các hàm chuỗi khác.
Hãy thử điều này:substr(misc,locate('group_id',misc)+11,5) as Misc
. Nhưng điều đó giả định rằng group_id luôn có 5 ký tự.
Vì vậy, điều này tốt hơn:substring_index(substr(misc,locate('group_id',misc)+char_length('group_id')+3),'"',1) as Misc
.
Đây là một thủ thuật để cho thấy nó hoạt động: http://sqlfiddle.com/#!2/ ea02e / 15
CHỈNH SỬA Bạn có thể loại bỏ +3
số ma thuật bằng cách thêm dấu ngoặc kép và dấu hai chấm trong các chuỗi như sau:substring_index(substr(misc,locate('"group_id":"',misc)+char_length('"group_id":"')),'"',1) as Misc