sql >> Databasteknik >  >> RDS >> Oracle

Oracle Fuzzy Search med mellanslag

Kontrollera först dokumentationen för Fuzzy operatör

Observera att en term innehåller vanligtvis inte tom och du måste dela upp din sökning i serat termer.

Observera dessutom att fuzzy för att aktiveras måste termen ha minst 3 tecken . Så ditt exempel med PO kommer inte att fungera.

Vad du kan göra för din installation är att definiera en extra fuzzy sök efter varje del av din fuzzy sträng och kombinera dem med near operatör som följer

 contains(po_number,'near (( fuzzy(word1,,,weight),fuzzy(word2,,,weight) ), 2, TRUE)',1) > 0

near tvingar här att båda matchningarna måste vara intilliggande (span =2) och beställde (TRUE ).

Hanteringen av specialtecken beror på definitionen av ditt whitespace och printjoins i dina inställningar .




  1. slå samman flera bord

  2. Flytta en rad från en tabell till en annan (Infoga värdelistan matchar inte kolumnlistan)

  3. Visa föräldraräkning baserat på barnbarnet

  4. Har InnoDB statiska tabeller?