ஒரு SQL இணைத்தல் சரம் பயன்படுத்த புத்திசாலித்தனமான வழிகள்

ஒரு SQL இணைத்தல் சரம் பயன்படுத்த புத்திசாலித்தனமான வழிகள்

கட்டமைப்பு வினவல் மொழி (SQL) ஒரு குறிப்பிடத்தக்க சக்திவாய்ந்த கருவி, மற்றும் அம்சங்கள் நிரம்பிய ஒன்று. ஒருமுறை நீங்கள் மிகவும் தேர்ச்சி பெற்றீர்கள் முக்கியமான SQL கட்டளைகள் , உங்கள் SQL மூலம் நீங்கள் இன்னும் கொஞ்சம் ஆக்கப்பூர்வமாகத் தொடங்கலாம். SQL ஒருங்கிணைப்பு சரங்களைப் பற்றி நீங்கள் தெரிந்து கொள்ள வேண்டிய அனைத்தையும் இன்று நான் உங்களுக்குக் காண்பிக்கிறேன்.





பல SQL பேச்சுவழக்குகள் உள்ளன. இந்த எல்லா எடுத்துக்காட்டுகளுக்கும், நான் இதைப் பயன்படுத்துகிறேன் PostgreSQL மாறுபாடு





ஜிமெயிலில் ஒருவரை எவ்வாறு தடுப்பது

இணைதல் என்றால் என்ன?

இணைதல் என்பது இரண்டு விஷயங்களை ஒன்றாக இணைப்பது. இரண்டு சரங்களை ஒன்றாக இணைக்க நீங்கள் அதை ஒரு நிரலாக்க மொழியில் பயன்படுத்தியிருக்கலாம். ஒருவேளை நீங்கள் ஒரு முழு பெயர் மாறியாக ஒன்றாக இணைந்த முதல் பெயர் மற்றும் குடும்பப்பெயர் மாறிகள் இருக்கலாம்.





இரண்டு சரங்களை ஒன்றில் இணைப்பதற்கு இணைத்தல் மிகவும் பயனுள்ள வழியாகும். PHP சரங்களை ஒன்றாக இணைக்க ஒரு முழு நிறுத்தத்தைப் பயன்படுத்துகிறது, அதேசமயம் ஜாவாஸ்கிரிப்ட் மற்றும் jQuery பிளஸ் அடையாளத்தைப் பயன்படுத்துகிறது.

SQL இல் ஒருங்கிணைப்பு சரியாக வேலை செய்கிறது. இரண்டு விஷயங்களை ஒன்றில் சேர நீங்கள் ஒரு சிறப்பு ஆபரேட்டரைப் பயன்படுத்துகிறீர்கள். இங்கே ஒரு உதாரணம் சூடோகோட் :



first_name = Joe
last_name = Coburn
whole_name = first_name + last_name

நிரலாக்க மொழிகளில், இணைத்தல் குறியீட்டை எளிதாக படிக்க உதவுகிறது. உங்கள் குறியீடு எப்பொழுதும் இரண்டு சரங்களை அணுக வேண்டும் என்றால், அவற்றை ஒன்றாக இணைப்பது நினைவில் கொள்வதை எளிதாக்குகிறது, மேலும் குறியீட்டின் நீளத்தை குறைக்கிறது.

SQL இல் உள்ள மாறிகள் குறைவாகவே காணப்படுகின்றன (ஆனால் இன்னும் பயன்படுத்தப்படுகின்றன), ஒருங்கிணைந்த முடிவுகளைத் திரும்ப அல்லது தரவுகளைக் கையாள ஒருங்கிணைப்பு இன்னும் தேவைப்படுகிறது.





இணைப்பது எப்படி

இணைதல் என்பது மிகவும் SQL இல் எளிதானது. SQL ஒரு பொதுவான மொழியாக இருந்தாலும், தனிப்பட்ட தரவுத்தள இயந்திரங்கள் பல்வேறு வழிகளில் அம்சங்களை செயல்படுத்துகின்றன. இந்த உதாரணங்கள் அனைத்தும் PostgreSQL பேச்சுவழக்கில் இருந்தாலும், வெறுமனே இணையத்தில் 'Concatenate' என்று தேடுவதன் மூலம் மற்ற வகைகளுக்கு மொழிபெயர்க்க எளிதானது. வெவ்வேறு இயந்திரங்கள் இணைப்பதற்கு வெவ்வேறு தொடரியல் இருக்கலாம், ஆனால் கொள்கை அப்படியே உள்ளது.

எங்கள் பெயர் உதாரணத்திற்குத் திரும்புகையில், இங்கே ஒரு அடிப்படை உள்ளது தேர்ந்தெடுக்கவும் கேள்வி:





SELECT first_name, last_name, email FROM users_table

இங்கே சிக்கலான எதுவும் இல்லை, எனவே இணைப்பில் சேர்க்கலாம்:

SELECT first_name || last_name AS full_name, email FROM users_table

நீங்கள் பார்க்கிறபடி, இந்த ஒருங்கிணைப்பு சரியாக வேலை செய்தது, ஆனால் ஒரு சிறிய பிரச்சனை இருக்கிறது. இதன் விளைவாக வரும் முழுப் பெயரும் இரண்டு நெடுவரிசைகளின் தயாரிப்பாக சரியாக ஒட்டப்பட்டுள்ளது - பெயர்களுக்கு இடையில் ஒரு இடைவெளி இருக்க வேண்டும்!

அதிர்ஷ்டவசமாக, அதை சரிசெய்வது எளிது: இரண்டிற்கும் இடையில் ஒரு இடைவெளியை வெட்டுங்கள்:

SELECT first_name || ' ' || last_name AS full_name, email FROM users_table

இவை அடிப்படை உதாரணங்கள், ஆனால் ஒருங்கிணைப்பு எவ்வாறு செயல்படுகிறது என்பதை நீங்கள் பார்க்க வேண்டும் - இது மிகவும் எளிதானது! குழாய் ஆபரேட்டர் ( | ) பிரிவுகளுக்கு இடையில் இரண்டு முறை பயன்படுத்தப்படுகிறது. இந்த சின்னத்திற்கு முன்னும் பின்னும் ஒவ்வொரு பகுதியும் ஒன்றாக இணைக்கப்பட்டு ஒன்றாக கருதப்பட வேண்டும் என்பது உங்கள் SQL இயந்திரத்திற்கு தெரியும். இருப்பினும் கவனமாக இருங்கள், நீங்கள் கான்கேட் ஆபரேட்டரைப் பயன்படுத்தினாலும் எதையும் இணைக்கவில்லை என்றால், நீங்கள் ஒரு பிழையைப் பெறுவீர்கள்.

மேலே குறிப்பிட்டுள்ளபடி, இந்த உதாரணங்கள் SQL இன் PostgreSQL மாறுபாட்டைப் பயன்படுத்துகின்றன. பிற வகைகள் வேறு ஆபரேட்டரைப் பயன்படுத்தலாம் அல்லது நீங்கள் அழைக்க வேண்டிய ஒரு சிறப்புச் செயல்பாட்டைப் பயன்படுத்தலாம். அது உண்மையில் இல்லை எப்படி நீங்கள் சரங்களை இணைத்து, உங்கள் தரவுத்தள இயந்திரம் எதிர்பார்க்கும் விதத்தில் அதைச் செய்கிறீர்கள்.

ஆழமாக செல்கிறது

இப்போது உங்களுக்கு அடிப்படைகள் தெரியும், சில பொதுவான ஆபத்துகளுடன் சில ஆழமான எடுத்துக்காட்டுகளைப் பார்ப்போம்.

பெரும்பாலான தரவுத்தள இயந்திரங்கள் சரங்கள் மற்றும் முழு எண்களின் கலவையை வெற்றிகரமாக இணைக்கும், ஒருவேளை தேதிகளும் கூட. வரிசைகள் போன்ற சிக்கலான வகைகளை ஒன்றிணைக்க முயற்சிக்கும்போது நீங்கள் பொதுவாக சிக்கல்களைச் சந்திப்பீர்கள்:

SELECT first_name || ' ' || last_name || ARRAY[123, 456] AS full_name, email FROM users_table

இந்த குறியீடு வேலை செய்யாது. வரிசைகள் போன்ற சிக்கலான பொருட்களுடன் சரங்களை இணைப்பது சாத்தியமில்லை. நீங்கள் என்ன செய்ய வேண்டும் என்று யோசித்தால், சிக்கலான, பைத்தியம் குறியீட்டை விட இயங்கக்கூடிய எளிய குறியீட்டை நீங்கள் அடிக்கடி எழுதலாம்.

நீங்கள் என்ன செய்ய வேண்டும் என்று கவனமாக யோசித்து, இன்னும் SQL வேலை செய்ய முடியாவிட்டால், நீங்கள் ஒரு நிரலாக்க மொழியைப் பயன்படுத்தலாமா? மரபு குறியீட்டில் பணிபுரியும் ஒரு மென்பொருள் டெவலப்பராக, SQL ஐ பிழைதிருத்தும் முயற்சியின் வலி எனக்குத் தெரியும், யாரோ ஒருவர் மிகவும் தர்க்கத்தை அடைத்துவிட்டார், அது ஒரு அதிசயம் - நீங்கள் SQL இல் தர்க்கத்தை எழுத முயற்சிக்கிறீர்கள் என்றால், அதற்கு மாறவும் நிரலாக்க மொழி (கற்றுக்கொள்ள எளிதான மொழிகள் நிறைய உள்ளன).

கருத்தரிப்பு மிகவும் நன்றாக வேலை செய்கிறது எங்கே அறிக்கைகள் கூட:

SELECT first_name, last_name, email FROM users_table WHERE date_of_birth = ('DAY' || '/' || 'MONTH' || '/' || 'YEAR')::date

இங்கே சில விஷயங்கள் நடக்கின்றன. இந்த எடுத்துக்காட்டில், நாள் , மாதம் , மற்றும் ஆண்டு ஒரு ஸ்கிரிப்டிலிருந்து அனுப்பப்பட்ட அளவுருக்கள். ஒருவேளை இவை குறியீட்டின் மூலம் உருவாக்கப்பட்டிருக்கலாம் அல்லது பயனரால் உள்ளிடப்பட்டிருக்கலாம். இவை ஒன்றாக இணைக்கப்பட்டன, பின்னர் ஒரு தேதி வகைக்கு அனுப்பப்படுகின்றன (PostgreSQL நடிகர்களைப் பயன்படுத்தி தேதி தொடரியல் :: தேதி )

இந்த வழியில் ஒன்றிணைப்பைப் பயன்படுத்துவது ஒரு தேதியின் தனிப்பட்ட பகுதிகளை ஒன்றாக இணைக்க உங்களை அனுமதிக்கிறது, பின்னர் ஒரு சரத்திற்கு மாறாக 'உண்மையான' தேதியாக செயலாக்க முடியும். இந்த அடிப்படை உதாரணம் SQL ஊசிக்கு எதிராக பாதுகாக்காது என்பதை மறந்துவிடாதீர்கள், எனவே அதை மாற்றாமல் எந்த உற்பத்தி குறியீடிலும் பயன்படுத்த வேண்டாம்.

கவனிக்க வேண்டிய மற்றொரு ஆபத்து ஏதுமில்லை மதிப்புகள் (பூஜ்ய சரம் என்பது வெற்று அல்லது இல்லாத சரம்). இந்த வினவலைக் கருத்தில் கொண்டு:

SELECT first_name || ' ' || NULL AS full_name, email FROM users_table

இந்த கேள்வி அமைதியாக தோல்வியடைகிறது. உங்கள் தரவுத்தள எஞ்சினில் உள்ளிணைப்பு உள் குறியீடாக இருப்பதால் இது ஏற்படுகிறது. இந்த பிரச்சனையை நீங்கள் எப்போதும் சந்திக்காமல் இருக்கலாம், ஆனால் இது மிகவும் பொதுவான நிகழ்வு.

உங்கள் வினவல் தரவை ரத்து செய்யலாம் என்று நீங்கள் நினைத்தால், நீங்கள் ஒரு பயன்படுத்த வேண்டும் ஒன்று சேர்கிறது . கோலேஸ்ஸை தோராயமாக 'இது பூஜ்யமாக இருந்தால், அதை இந்த மற்ற சரம் அல்லது நெடுவரிசையுடன் மாற்றவும்' என்று கருதலாம்:

SELECT first_name || ' ' || COALESCE(NULL, 'ERROR NULL DATA') AS full_name, email FROM users_table

SQL இல் இணைப்பை எவ்வாறு பயன்படுத்துவது என்பது இப்போது உங்களுக்குத் தெரியும், அதை நீங்கள் என்ன செய்வீர்கள்? செய்வீர்களா ஒரு இணையதளத்தை உருவாக்கவும் மற்றும் அதை SQL உடன் உயிர்ப்பிக்கவா? அல்லது வலைத்தளங்களை உருவாக்குவதற்கான எளிய அணுகுமுறைக்கு உங்களுக்கு நிலையான தள ஜெனரேட்டர் தேவைப்படலாம்.

நீங்கள் என்ன செய்தாலும், கீழே உள்ள கருத்துகளில் எங்களுக்குத் தெரியப்படுத்துங்கள்!

ஒரு வெளிப்படையான படத்தை எப்படி உருவாக்குவது
பகிர் பகிர் ட்வீட் மின்னஞ்சல் 6 கேட்கக்கூடிய மாற்று: சிறந்த இலவச அல்லது மலிவான ஆடியோபுக் ஆப்ஸ்

ஆடியோபுக்குகளுக்கு நீங்கள் பணம் செலுத்த விரும்பவில்லை என்றால், அவற்றை இலவசமாகவும் சட்டப்பூர்வமாகவும் கேட்க சில சிறந்த பயன்பாடுகள் இங்கே உள்ளன.

அடுத்து படிக்கவும்
தொடர்புடைய தலைப்புகள்
  • நிரலாக்க
  • நிரலாக்க
  • SQL
எழுத்தாளர் பற்றி ஜோ கோபர்ன்(136 கட்டுரைகள் வெளியிடப்பட்டன)

ஜோ இங்கிலாந்தின் லிங்கன் பல்கலைக்கழகத்தில் கணினி அறிவியலில் பட்டதாரி. அவர் ஒரு தொழில்முறை மென்பொருள் டெவலப்பர், அவர் ட்ரோன்கள் பறக்காதபோது அல்லது இசை எழுதாதபோது, ​​அவர் அடிக்கடி புகைப்படம் எடுப்பதை அல்லது வீடியோக்களை தயாரிப்பதை காணலாம்.

ஜோ கோபர்னிடமிருந்து மேலும்

எங்கள் செய்திமடலுக்கு குழுசேரவும்

தொழில்நுட்ப குறிப்புகள், மதிப்புரைகள், இலவச மின் புத்தகங்கள் மற்றும் பிரத்யேக ஒப்பந்தங்களுக்கு எங்கள் செய்திமடலில் சேரவும்!

குழுசேர இங்கே சொடுக்கவும்