összefoglaló helyzetét: ez a bemutató megmutatja, hogyan használhatja a MySQL INSTR funkciót a karakterlánc első előfordulásának helyzetének visszaadásához.
Bevezetés a MySQL INSTR funkcióba
néha meg szeretne találni egy karakterláncot egy karakterláncban, vagy ellenőrizni, hogy létezik-e egy karakterlánc. Ebben az esetben a INSTRnevű beépített függvényt használhatja.
a INSTR függvény visszaadja egy karakterlánc első előfordulásának helyzetét., Ha az alrendszer nem található az str-ben, akkor a INSTR függvény értéke nulla (0).
az alábbiakban a INSTR függvény szintaxisát mutatjuk be.
Code language: SQL (Structured Query Language) (sql)
próbálja ki
a INSTR funkció két érvet fogad el:
- a
strA keresni kívánt karakterlánc. - a
substraz a szubsztrátum, amelyet keresni szeretne.
a INSTR függvény nem ESET érzékeny., Ez azt jelenti, hogy nem számít, hogy átadja-e a kisbetűs, nagybetűs, címes tokot stb., az eredmények mindig ugyanazok.
Ha azt szeretné, hogy aINSTR függvény az eset-érzékeny módon végezzen kereséseket egy nem bináris karakterláncon, akkor aBINARY operátort használja aINSTR függvény Argumentumának egy nem bináris karakterláncból egy bináris karakterláncba.
A MySQL INSTR függvény példák
a következő utasítás a MySQL INSTR karakterláncban adja vissza a MySQL alrendszer pozícióját.,
Code language: SQL (Structured Query Language) (sql)
próbálja ki
a következő állítás ugyanazt az eredményt adja vissza, mivel a INSTR függvény eset-érzéketlen.,
Code language: SQL (Structured Query Language) (sql)
Próbálja Ki
kényszeríteni INSTR függvény a keresés alapján esetben-érzékeny divat, használja a BINARY üzemeltető a következőképpen:
Code language: SQL (Structured Query Language) (sql)
Próbálja Ki
Az eredmény más, mert mysql vs MySQL most a BINARY operátor.
az INSTR függvény vs. like operátor
fogjuk használni aproducts táblázat a minta adatbázisban.,
tegyük fel, hogy olyan terméket szeretne találni, amelynek neve tartalmazza a car kulcsszót, használhatja a INSTR függvény az alábbiak szerint:
Code language: SQL (Structured Query Language) (sql)
próbálja ki
a INSTR függvény, akkor a LIKE operátor, hogy megfeleljen a Car minta.,
Code language: SQL (Structured Query Language) (sql)
próbálja ki
mindkét lekérdezés ugyanazt az eredményt adja vissza. Tehát melyik gyorsabb, a INSTR vagy a LIKE operátor?
a válasz az, hogy ugyanazok. Mindkettő eset-érzékeny, és teljes asztali szkennelést végez.
hozzunk létre egy indexet a productname oszlopban.,
Code language: SQL (Structured Query Language) (sql)
próbálja ki
Ha a LIKE operátort használja a keresés előtaggal, ebben az indexelt oszlopban a LIKE operátor gyorsabban teljesít, mint a INSTR div > funkció.
lásd a következő nyilatkozatot.,
Code language: SQL (Structured Query Language) (sql)
Try It Out
You can check it using the EXPLAIN statement:
Code language: SQL (Structured Query Language) (sql)
Try It Out
And compare with the following statement that uses the INSTR function.,
próbálja ki
a INSTR függvény a productname oszlop van egy index. Ennek oka az, hogy a MySQL nem tud feltételezni a INSTR függvény szemantikáját, amellyel a MySQL kihasználhatja a LIKE operátor szemantikájának megértését.
a leggyorsabb módja annak, hogy teszteljék, ha egy karakterlánc létezik, hogy egy teljes szöveg index., Azonban szükség van egy configure és fenntartani az index megfelelően.
ebben az oktatóanyagban megtanulta, hogyan kell használni a INSTR függvényt, hogy megtalálja a karakterlánc első előfordulásának helyzetét.
- hasznos volt ez a bemutató?
- YesNo
Leave a Reply