sql >> Databasteknik >  >> RDS >> Mysql

Hur man tar bort dubblettrad med tanke på den arabiska fonetiken

Det finns flera sätt att uppnå detta.

1- Du kan antingen välja dina rader från databasen, gå igenom dem och spara "ord"-titeln i en array, och i varje iteration i loopen kan du kontrollera om ett liknande värde är in_array() . Om värdet finns kan du spara ID:t i en annan array och sedan använda dessa ID för att radera från databasen.

2- Ett annat sätt att extrahera ID är att använda en fråga som liknar nedan:

välj count(*), id från tabellgrupp efter titel

Du kan sedan gå igenom resultaten och ta bort raden (med hjälp av ID) där antalet är större än 1.

Grundkonceptet i båda (och andra metoder) är att du bara måste matcha strängarna. Fonetik på bokstäver ändrar den faktiska strängen så att "سَلام" inte är lika med "سلام".

Som en sidoanteckning, det finns ett fantastiskt arabiskt PHP-bibliotek som du kan använda för olika arabiska relaterade strängmanipulationer:PHP och arabiska språk .

På det här sättet tar du bara bort en dubblett.

Det finns flera andra sätt att göra det på, och allt beror på storleken på datamängden du har och om radering av dessa dubbletter är en engångssak eller en vanlig sak eftersom du måste ha prestanda i åtanke.



  1. hur man gör nedräkningstimer för budgivningswebbplats

  2. Intervjufråga:Hur får man sammanställning av de senaste tre månaderna på kolumnnivå?

  3. visa mysql newline i HTML

  4. Kryptera lösenord i R - för att ansluta till en Oracle DB med RODBC