09/10/2018, 23:59
ODRER By... và ký tự "Đ" trong MySQL
Hình như MySQL không nhận diện được chính xác các mẫu tự chữ cái của Việt ngữ. Mặc dù không có vấn đề trong hiển thị nội dung và so khớp từ khóa tìm kiếm, nhưng khi sắp xếp một loạt record theo trật tự alphabet thì nó đặt "Đ" lên trước ABC...
Các bác có cách nào giải quyết vấn đề này không ?
Các bác có cách nào giải quyết vấn đề này không ?
Bài liên quan
Theo mình biết thì version của MySQL hiện tại chữa hỗ trợ toàn diện cho Unicode. có thể nhận thấy điều đó qua vấn đề mà pác chủ topic đã nêu.
Cách giải quyết vấn đề này theo mình nghĩ thì không phải là không có, tuy nhiên sẽ hơi lâu và mất nhiều resource của server.
Cách mình nghĩ đó là: Ta sẽ lập 1 array thứ tự của các chữ cái đúng theo Alphabet (ta gọi nó là array1), vẫn thực hiện câu query như hiện tại sau khi có được dữ liệu từ MySQL ta sẽ trích ra ký tự đầu tiện (Hoặc ký tự ở vị trí nào đó tùy yêu cầu) của trường ta cần sắp sếp vào một array khác (ta gọi là array2) sau đó so sánh array2 với array1 để sắp sếp lại array2. Từ đó ta có thể dùng mutilsort trong php để chuẩn hóa sắp xếp cho dữ liệu ta cần trả về.....
Mong mọi người góp ý.
Cái vụ sort này nếu phải làm như bác chỉ dẫn thì phiền phức quá bác nhỉ ! Chắc em phải làm thử 1 cái. Nhưng cũng để chờ coi có ý kiến nào khác nữa không
http://bugs.mysql.com/file.php?id=6814