PHP போன்ற வலை ஸ்கிரிப்டிங் மொழிகளால் வழங்கப்பட்ட செயல்பாடுகளுக்கு ஒத்த பல உள்ளமைக்கப்பட்ட சரம் கையாளுதல் செயல்பாடுகளை MySQL கொண்டுள்ளது. இந்த செயல்பாடுகளை நீங்கள் ஒரு MySQL வினவலில் "தேர்ந்தெடு" மற்றும் "WHERE" ஆகிய இரண்டிலும் பயன்படுத்தலாம். நீங்கள் ஒரு சரத்தில் ஒரு எழுத்தைக் கண்டுபிடித்து, இரண்டு வெவ்வேறு சரம் செயல்பாடுகளின் வெளியீட்டை இணைப்பதன் மூலம் எல்லாவற்றையும் அந்த எழுத்தின் இடதுபுறமாகத் திருப்பலாம்.
தரவை ஆய்வு செய்யுங்கள்
ஒரு MySQL வினவலை அடிப்படையாகக் கொள்ள நீங்கள் திட்டமிட்டுள்ள ஒரு புலத்திற்கு தரவுத்தளத்தில் உள்ள தரவு எவ்வாறு வடிவமைக்கப்பட்டுள்ளது என்பதைத் தீர்மானிக்கவும். PHPMyAdmin போன்ற கருவியைப் பயன்படுத்தி, தரவு புலங்களின் வடிவமைப்பை சரிபார்க்க தரவுத்தள உள்ளடக்கங்களை உலாவுக. எடுத்துக்காட்டாக, ஒரு தொடர் எண்களைத் தொடர்ந்து ஒரு கடிதம் மற்றும் மற்றொரு தொடர் எண்களைக் கொண்ட ஒரு புலம் "009378M38293" போன்ற வடிவமைப்பைக் கொண்டுள்ளது.
இடது
MySQL "LEFT" செயல்பாடு ஒரு சரத்தின் தொடக்கத்திலிருந்து ஒரு குறிப்பிட்ட எண்ணிக்கையிலான எழுத்துக்களை வழங்குகிறது. உதாரணத்திற்கு:
இடது (உருப்படி
, 10)
"உருப்படி" புலத்தில் உள்ள சரத்திலிருந்து முதல் 10 எழுத்துக்களை வழங்குகிறது.
LOCATE
ஒரு கடிதம் நிகழும் ஒரு சரத்தில் இடத்தின் இடதுபுறத்தில் அனைத்து எழுத்துக்களையும் பிரித்தெடுக்க, MySQL "LOCATE" செயல்பாட்டுடன் கடிதம் நிகழும் நிலையை தீர்மானிக்கவும். எடுத்துக்காட்டாக, "உருப்படி" புலம் "009378M38293" என்றால், பின்னர்:
LOCATE ("M", உருப்படி
)
ஏழு தருகிறது, இது "எம்" எழுத்தின் நிலை.
LEFT மற்றும் LOCATE ஐ இணைத்தல்
"M" போன்ற ஒரு எழுத்தின் இடதுபுறத்தில் அனைத்து எழுத்துக்களையும் திருப்ப, "LOCATE" மற்றும் "LEFT" செயல்பாடுகளின் முடிவுகளை நீங்கள் இணைக்கலாம். முடிவு தொகுப்பில் நீங்கள் கடிதத்தை சேர்க்க விரும்பவில்லை என்பதால், "LOCATE" செயல்பாட்டின் முடிவிலிருந்து ஒன்றைக் கழிக்கவும். "LEFT" செயல்பாட்டின் மூலம் நீங்கள் திரும்ப விரும்பும் எழுத்துக்களின் எண்ணிக்கையாக அந்த மதிப்பைப் பயன்படுத்தவும். எடுத்துக்காட்டாக, "உருப்படி" புலத்தில் "009378M38293" இருந்தால், பின்:
இடது (உருப்படி
, LOCATE ("M", உருப்படி
) -1) என்பது LEFT (உருப்படி
, 6) இது "009378" ஐ வழங்குகிறது.
WHERE பிரிவு சேர்க்கிறது
இந்த செயல்பாடுகளைப் பயன்படுத்தி நீங்கள் ஒரு MySQL வினவலை உருவாக்கும்போது, "M" என்ற எழுத்தைக் கொண்ட புலங்களுக்கு மட்டுமே முடிவுகளைச் சேர்க்க விரும்பலாம், இதனால் உங்கள் முடிவு தொகுப்பில் வெற்று வரிசைகள் இல்லை. இதைச் செய்ய, நீங்கள் தேடும் கடிதம் இருக்கும்போது மட்டுமே முடிவுகளை வழங்க "WHERE" பிரிவுடன் வினவலில் "LOCATE" செயல்பாட்டை இரண்டாவது முறையாகப் பயன்படுத்தவும்; "LOCATE" செயல்பாடு பூஜ்ஜியத்தை விட அதிகமான எண்ணைத் தரும் போது.
விளைவாக
எல்லாவற்றையும் ஒரே MySQL அறிக்கையில் இணைக்கவும். எடுத்துக்காட்டாக, "M:" என்ற எழுத்தைக் கொண்டிருக்கும் ஒவ்வொரு "உருப்படிகள்" புலத்திற்கும் "M" எழுத்தின் இடதுபுறத்தில் "உருப்படிகள்" புலத்தில் உள்ள எழுத்துக்களைக் கொண்ட ஒரு முடிவு தொகுப்பை பின்வரும் அறிக்கை வழங்குகிறது.
இடது தேர்ந்தெடுக்கவும் (உருப்படி
, LOCATE ("M", உருப்படி
) -1) ஏ.எஸ் உருப்படி
FROM பொருட்களை
WHERE LOCATE ("M", உருப்படி
)>0