A 'cleachdadh Wildcards airson Inexact Matching
Tha maidseadh pàtrain SQL a 'toirt cothrom dhut lorg a dhèanamh airson pàtrain ann an dàta, mura h-eil thu eòlach air an fhacal cheart no an abairt a tha thu a' sireadh. Bidh an seòrsa ceist SQL a 'cleachdadh caractaran cairt fiadhaich gus maidseadh pàtran, an àite a bhith ga chomharrachadh gu dìreach. Mar eisimpleir, faodaidh tu an cairt fhiadhaich "C%" a chleachdadh gus maids a dhèanamh le sreang sam bith a 'tòiseachadh le prìomh-bhaile C.
A 'cleachdadh an LIKE Operator
Gus mìneachadh cairt-fhiadhaich a chleachdadh ann an ceist SQL, cleachd an gnìomhaiche LIKE ann an clàsail BH, agus cuir a-steach am pàtran taobh a-staigh comharran luachaidh singilte.
A 'cleachdadh an% cairt-fhiadhaich gus Rannsachadh Sìmplidh a dhèanamh
Gus lorg neach-obrach sam bith anns an stòr-dàta agad le ainm mu dheireadh a 'tòiseachadh le litir C, cleachd an aithris Transact-SQL a leanas:
SELECT * FROM luchd-obrach SINN an t-ainm mu dheireadh LEAS 'C%'Pàtran Tòraidheach A 'Cleachdadh NACH Facal-luirg
Cleachd an eochair-fhacal NOT gus clàran a thaghadh nach eil a 'freagairt ris a' phàtran. Mar eisimpleir, bidh an ceist seo a 'tilleadh a h-uile clàr nach tòisich an t-ainm mu dheireadh aige le C:
SELECT * FROM luchd-obrach DACH ainm a 'chogaidh nach eil. CHA BHI' C% 'A 'co-rèiteachadh pàtran An àite a chleachdas%% cairt fiadhaich a dhà
Cleachd dà shuidheachadh den chairt-faire % airson maidseadh pàtran sònraichte an àite sam bith. Tha an eisimpleir seo a 'tilleadh a h-uile clàr aig a bheil C ann an àite sam bith san ainm mu dheireadh:
SELECT * FROM luchd-obrach LE A 'phrìomh ainm A bheil thu coltach'% C% 'A 'lorg maids pàtrain aig suidheachadh sònraichte
Cleachd an _ wildcard gus dàta a thilleadh aig àite sònraichte. Bidh an eisimpleir seo a 'maidseadh a-mhàin ma tha C a' nochdadh aig an treas suidheachadh den cholbh ainm mu dheireadh:
SELECT * FROM luchd-obrach LÀN-CHUNNTAS GU DHÈAN '_ _C%'Taisbeanaidhean cairt-fhiadhaich le taic ann an SQL eadar-ghnìomhach
Tha grunn abairtean cairt-fiadhaich ann le Transact SQL:
- Bidh an % cairt fiadhaich a 'coiseachd neoni no barrachd charactaran de sheòrsa sam bith, agus faodar a chleachdadh gus geamannan fiadhaich a mhìneachadh an dà chuid ro agus às dèidh a' phàtrain. Ma tha thu eòlach air a bhith a 'maidseadh pàtrain DOS, tha e co-ionann ris a' chairt-fhìn anns a 'cho-fhreagairt sin.
- Bidh an _ wildcard a 'maidseadh gu dìreach aon charactar de sheòrsa sam bith. Tha e co-ionann ris an ? cairt fiadhaich ann am maidseadh pàtran DOS.
- Sònraich liosta de charactaran le bhith gan gèilleadh ann an camagan ceàrnach. Mar eisimpleir, tha an wildcard [aeiou] a ' maidseadh fuaimreag sam bith.
- Sònraich raon de charactaran le bhith a 'dùnadh an raoin ann an camagan ceàrnach. Mar eisimpleir, bidh an cairt-fhiadhaich [i] a ' maidseadh litir sam bith sa chiad leth den aibidil.
- Dèan diofraichte air caractaran le bhith a 'toirt a-steach a' charactar carat sa bhad taobh a-staigh an raon ceàrnagach fosglaidh. Mar eisimpleir, bidh [^ aeiou] a ' maidseadh caractar gun fhuaimreagal fhad' sa tha [^ am] a ' maidseadh caractar sam bith nach eil anns a' chiad leth den aibidil.
A 'cur còmhla Wildcards airson pàtrain coimpiutair
Cuir na cairtean fiadhaich seo còmhla ann am pàtrain iom-fhillte gus ceistean nas adhartaiche a dhèanamh. Mar eisimpleir, tha e coltach gum feum thu liosta a thogail de na h-uile neach-obrach agad aig a bheil ainmean a tha a 'tòiseachadh le litir bhon chiad leth den aibidil ach nach eil a' crìochnachadh le fuaimreag. Dh'fhaodadh tu an ceist a leanas a chleachdadh:
SELECT * FROM luchd-obrach LÀIR an t-sloinneadh mu dheireadh DÈAN '[am]% [^ aeiou]'Mar an ceudna, dh'fhaodadh tu liosta de luchd-obrach air fad a thogail le ainmean mu dheireadh a tha a 'gabhail a-steach dìreach ceithir caractaran le bhith a' cleachdadh ceithir eisimpleirean den _ pattern:
SELECT * FROM luchd-obrach SON A 'CHÀR-CUNNTAS GU DHÈAN' ____ 'Mar a dh 'innseas tu, tha cleachdadh comasan pàtrain SQL a' toirt cothrom do luchd-cleachdaidh stòr-dàta a dhol thairis air ceistean teacsa sìmplidh agus a 'dèanamh obraichean rannsachaidh adhartach.