MySQL PHP వంటి వెబ్ స్క్రిప్టింగ్ భాషలచే అందించబడిన ఫంక్షన్లకు సమానమైన అనేక అంతర్నిర్మిత స్ట్రింగ్ మానిప్యులేషన్ ఫంక్షన్లను కలిగి ఉంది. మీరు MySQL ప్రశ్నలో "SELECT" మరియు "WHERE" క్లాజులలో ఈ ఫంక్షన్లను ఉపయోగించవచ్చు. మీరు స్ట్రింగ్లో ఒక అక్షరాన్ని కనుగొని, రెండు వేర్వేరు స్ట్రింగ్ ఫంక్షన్ల అవుట్పుట్ను కలపడం ద్వారా ఆ అక్షరానికి ఎడమవైపున ప్రతిదీ తిరిగి ఇవ్వవచ్చు.
డేటాను పరిశీలించండి
మీరు MySQL ప్రశ్నను బేస్ చేయడానికి ప్లాన్ చేసిన ఫీల్డ్ కోసం డేటాబేస్లోని డేటా ఎలా ఫార్మాట్ చేయబడిందో నిర్ణయించండి. PHPMyAdmin వంటి సాధనాన్ని ఉపయోగించి, డేటా ఫీల్డ్ల ఆకృతిని ధృవీకరించడానికి డేటాబేస్ విషయాలను బ్రౌజ్ చేయండి. ఉదాహరణకు, సంఖ్యల శ్రేణిని కలిగి ఉన్న ఫీల్డ్లో ఒక అక్షరం మరియు మరొక సంఖ్యల సంఖ్య "009378M38293" వంటి ఆకృతిని కలిగి ఉంటుంది.
ఎడమ
MySQL "LEFT" ఫంక్షన్ స్ట్రింగ్ ప్రారంభం నుండి పేర్కొన్న సంఖ్యలో అక్షరాలను అందిస్తుంది. ఉదాహరణకి:
ఎడమ (అంశం
, 10)
"అంశం" ఫీల్డ్లోని స్ట్రింగ్ నుండి మొదటి 10 అక్షరాలను అందిస్తుంది.
LOCATE
అక్షరం సంభవించే స్ట్రింగ్లో స్థలం యొక్క ఎడమ వైపున అన్ని అక్షరాలను సేకరించేందుకు, MySQL "LOCATE" ఫంక్షన్తో అక్షరం సంభవించే స్థానాన్ని నిర్ణయించండి. ఉదాహరణకు, ఫీల్డ్ "అంశం" "009378M38293" అయితే, అప్పుడు:
LOCATE ("M", అంశం
)
ఏడు తిరిగి ఇస్తుంది, ఇది "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) ఎ.ఎస్ ఐటెమ్లెఫ్ట్
నుండి అంశాలు
WHERE LOCATE ("M", అంశం
)>0