Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cách xóa hàng trùng lặp bằng cách xem xét Phiên âm tiếng Ả Rập

Có nhiều cách để đạt được điều này.

1- Bạn có thể chọn các hàng của mình từ cơ sở dữ liệu, lặp qua chúng và lưu tiêu đề 'từ' trong một mảng và trong mỗi lần lặp lại trong vòng lặp, bạn có thể kiểm tra xem giá trị tương tự có phải là in_array () . Nếu giá trị tồn tại, thì bạn có thể lưu id trong một mảng khác và sau đó sử dụng các id này để xóa khỏi cơ sở dữ liệu.

2- Một cách khác để trích xuất id là sử dụng truy vấn tương tự như bên dưới:

select count (*), id từ nhóm bảng theo tiêu đề

Sau đó, bạn có thể lặp lại các kết quả và xóa hàng (sử dụng id) có số lượng lớn hơn 1.

Khái niệm cơ bản trong cả hai (và các phương pháp khác) là bạn chỉ phải khớp các chuỗi. Phiên âm trên các chữ cái thay đổi chuỗi thực tế nên "سَلام" không bằng "سلام".

Lưu ý nhỏ là có một thư viện PHP tiếng Ả Rập tuyệt vời mà bạn có thể sử dụng để thao tác chuỗi liên quan đến tiếng Ả Rập khác nhau: PHP và Ngôn ngữ Ả Rập .

Cách này sẽ chỉ xóa một bản sao.

Có một số cách khác để thực hiện điều đó và tất cả phụ thuộc vào kích thước của tập dữ liệu bạn có và việc xóa các bản sao này là chuyện một lần hay thường xuyên vì bạn sẽ phải lưu ý đến hiệu suất.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nhóm bản ghi theo cả tháng và năm trong Rails

  2. Trong đó hùng hồn với việc tham gia nhiều bảng

  3. Lỗi trong truy vấn MySQL (lỗi trong cú pháp SQL của bạn)

  4. Tại sao lại có \ G trong SELECT * FROM table_name \ G?

  5. SUM của số tiền có ký hiệu Đô la