Rakstu saskaņošana SQL vaicājumos ar aizstājējzīmēm

click fraud protection

SQL rakstu atbilstība ļauj meklēt modeļus datos, ja nezināt precīzu meklējamo vārdu vai frāzi. Šāda veida SQL vaicājums izmanto aizstājējzīmes, lai saskaņotu modeli, nevis precīzi to norādītu. Piemēram, varat izmantot aizstājējzīmi "C%", lai saskaņotu jebkuru virkni, kas sākas ar lielo C.

Palielināmais stikls
Kate Ter Haar / Flickr / CC par 2.0

Operatora LIKE izmantošana

Lai SQL vaicājumā izmantotu aizstājējzīmi, klauzulā WHERE izmantojiet operatoru LIKE un modeli pievienojiet pēdiņās.

% Aizstājējzīmes izmantošana, lai veiktu vienkāršu meklēšanu

Lai meklētu jebkuru darbinieku savā datu bāzē ar uzvārdu, kas sākas ar burtu C, izmantojiet šo Transact-SQL priekšrakstu:

SELECT *
NO darbiniekiem
WHERE uzvārds LIKE 'C%'

Rakstu izlaišana, izmantojot atslēgvārdu NOT

Izmantojiet atslēgvārdu NOT, lai atlasītu ierakstus, kas neatbilst paraugam. Piemēram, šis vaicājums atgriež visus ierakstus, kuru vārds ir pēdējais sākas ar C:

SELECT *
NO darbiniekiem
WHERE uzvārds NEPATĪK 'C%'

Modeļa pielāgošana jebkur, izmantojot divreiz% aizstājējzīmi

instagram viewer

Izmantojiet divus % aizstājējzīmi, lai tā atbilstu noteiktam paraugam jebkur. Šis piemērs atgriež visus ierakstus, kas satur C jebkur uzvārdā:

SELECT *
NO darbiniekiem
WHERE uzvārds LIKE '% C%'

Raksta atbilstības atrašana noteiktā pozīcijā

Izmantojiet _ aizstājējzīmi, lai atgrieztu datus noteiktā vietā. Šis piemērs sakrīt tikai tad, ja C parādās uzvārda kolonnas trešajā pozīcijā:

SELECT *
NO darbiniekiem
WHERE uzvārds LIKE '_ _C%'

Transact SQL atbalstītās aizstājējzīmju izteiksmes

Transact SQL atbalsta vairākas aizstājējzīmes:

  • The % aizstājējzīme atbilst nullei vai vairāk jebkura veida rakstzīmēm, un to var izmantot, lai definētu aizstājējzīmes gan pirms, gan pēc raksta. Ja esat iepazinies ar DOS modeļu atbilstību, tas ir līdzvērtīgs * aizstājējzīmei šajā sintaksē.
  • The _ aizstājējzīme atbilst tieši vienam jebkura veida rakstzīmei. Tas ir ekvivalents ? aizstājējzīme DOS modeļu atbilstībā.
  • Norādiet rakstzīmju sarakstu, iekļaujot tās kvadrātiekavās. Piemēram, aizstājējzīme [patskaņi] sakrīt ar jebkuru patskaņu.
  • Norādiet rakstzīmju diapazonu, iekļaujot diapazonu kvadrātiekavās. Piemēram, aizstājējzīme [a-m] atbilst jebkuram burtam alfabēta pirmajā pusē.
  • Noliegiet rakstzīmju diapazonu, iekļaujot karātu rakstzīmi tieši sākuma kvadrātiekavas iekšpusē. Piemēram, [^ aeiou] sakrīt ar jebkuru patskaņu rakstzīmi, kamēr [^ a-m] atbilst jebkuram burtam, kas nav alfabēta pirmajā pusē.

Aizstājējzīmju apvienošana sarežģītiem modeļiem

Apvienojiet šīs aizstājējzīmes sarežģītos modeļos, lai veiktu sarežģītākas vaicājumus. Piemēram, pieņemsim, ka jums ir jāsastāda visu darbinieku saraksts, kuru vārdi sākas ar burtu no alfabēta pirmās puses, bet beidzas ar patskaņu. Jūs varētu izmantot šādu vaicājumu:

SELECT *
NO darbiniekiem
KUR uzvārds LIKE '[a-m]% [^ aeiou]'

Tāpat jūs varētu izveidot visu darbinieku sarakstu ar uzvārdiem, kas sastāv tieši no četrām rakstzīmēm, izmantojot četrus _ modelis:

SELECT *
NO darbiniekiem
WHERE uzvārds LIKE '____'

Kā jūs varat pateikt, SQL modeļu saskaņošanas iespēju izmantošana piedāvā datu bāzes lietotājiem iespēju pārsniegt vienkāršus teksta vaicājumus un veikt uzlabotas meklēšanas darbības.

instagram story viewer