Můžete vytvořit index pro pole, které je omezeno délkou prefixu, což znamená, že bude uvažováno pouze prvních n znaků, nemůžete to však udělat s libovolnou počáteční a koncovou pozicí. Přečtěte si o tom více na mysql CREATE INDEX stránka dokumentace.
V tomto případě bych udělal další sloupec, použijte mysql REVERSE funkci, která jej vyplní a vytvoří na něm rejstřík. Tímto způsobem získáte pole, ve kterém lze hledat rub původního slova.
Jiné databáze, jako je Postgresql, vám umožňují indexovat výraz
, což by vám efektivně umožnilo indexovat reverse(col_name)
aniž byste vytvořili další sloupec. Takže je to možné, jen ne s mysql právě teď. (Věřím, že verze 9 má potgresql reverse() native)