Izmantojot aizstājējzīmes netiešai atbilstībai
SQL paraugu saskaņošana ļauj meklēt datu modeļus, ja jūs nezināt precīzu vārdu vai frāzi, kuru meklējat. Šāda veida SQL vaicājums izmanto aizstājējzīmes, lai tas atbilstu modelim, nevis precīzi norādot. Piemēram, jūs varat izmantot aizstājējzīmi "C%", lai atbilstu jebkurai virknei, kas sākas ar kapitāla C.
LIKE operatora lietošana
Lai SQL vaicājumā izmantotu aizstājējzīmi, izmantojiet LIKE operatoru WHERE klauzulā un pievienojiet modeli pēdiņās.
Izmantojot% aizstājējzīmi, lai veiktu vienkāršu meklēšanu
Lai meklētu jebkuru darbinieks savā datubāzē ar uzvārdu, kas sākas ar burtu C, izmantojiet šādu Transact-SQL paziņojumu:
SELECT * no darbiniekiem WHERE last_name LIKE 'C%'Izlaist modeļus, izmantojot NOT atslēgvārdu
Izmantojiet NĒ atslēgvārdu, lai atlasītu ierakstus, kas neatbilst modelim. Piemēram, šis vaicājums atgriež visus ierakstus, kuru nosaukums pēdējais nesākas ar C:
SELECT * no darbiniekiem WHERE last_name NAV LIKE 'C%'Katra parauga saskaņošana, izmantojot divreiz% aizstājējzīmi
Izmantojiet divus % aizstājējzīmes gadījumus, lai atbilstu konkrētam modelim jebkurā vietā. Šajā piemērā tiek parādīti visi ieraksti, kas satur C jebkurā pseidonīma vārdā:
SELECT * no darbiniekiem WHERE last_name LIKE '% C%'Meklējat modeļa atbilstību konkrētai pozīcijai
Izmantojiet _ aizstājējzīmi, lai datus atgrieztos konkrētā vietā. Šis piemērs atbilst tikai tad, ja C ir trešās pozīcijas pseidonīmu kolonna:
SELECT * no darbiniekiem WHERE last_name LIKE '_ _C%'Atbalstītās aizstājējrakstu izteiksmes Transact SQL
Transact SQL atbalsta vairākas aizstājējzīmes:
- Aizstājējzīmes % atbilst jebkura veida nullei vai vairākām rakstzīmēm, un to var izmantot, lai definētu aizstājējzīmes gan pirms, gan pēc parauga. Ja esat iepazinies ar DOS paraugu saskaņošanu, tas ir līdzvērtīgs * aizstājējzīmei šajā sintaksē.
- Aizstājējzīme atbilst tieši vienam jebkura veida rakstzīmei. Tas ir līdzvērtīgs ? aizstājējzīmes DOS parauga saskaņošanā.
- Norādiet rakstzīmju sarakstu, pievienojot tos kvadrātiekavās. Piemēram, aizstājējzīme [aeiou] atbilst jebkuram patskaņam.
- Norādiet rakstzīmju diapazonu, pievienojot diapazonu kvadrātiekavās. Piemēram, aizstājējzīme [am] atbilst jebkurai vēstulei alfabēta pirmajā pusē.
- Neievērojiet rakstzīmju diapazonu, iekļaujot karātos rakstzīmi tieši sākuma kvadrātiekavai. Piemēram, [^ aeiou] atbilst jebkuram vārdam, kas nav balsis, bet [^ am] atbilst jebkuram simbolam, kas nav pirmajā alfabēta pusē.
Apvienojot aizstājējzīmes kompleksiem modeļiem
Apvienojiet šos aizstājējzīmes sarežģītos modeļos, lai veiktu vairāk uzlabotus vaicājumus. Piemēram, pieņemsim, ka jums jāizveido saraksts ar visiem saviem darbiniekiem, kuriem ir vārdi, kas sākas ar vēstuli no alfabēta pirmās puses, bet nebeidzas ar patskani. Jūs varētu izmantot šādu vaicājumu:
SELECT * no darbiniekiem WHERE last_name LIKE '[am]% [^ aeiou]'Tāpat jūs varētu veidot sarakstu ar visiem darbiniekiem ar pseidonīmiem, kas sastāv no precīzi četrām rakstzīmēm, izmantojot četrus _ modeļa gadījumus:
SELECT * no darbiniekiem WHERE last_name LIKE "____"Kā jūs varat teikt, SQL rakstu saskaņošanas iespēju izmantošana ļauj datu bāzes lietotājiem pārsniegt vienkāršus teksta vaicājumus un veikt uzlabotas meklēšanas operācijas.