SQL அடிப்படைகள்

DDL, DML மற்றும் JOIN கள் பற்றி அறியவும்

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

SQL பின்னால் உள்ள அடிப்படைகளுக்கு இந்த அறிமுகம் தரவுத்தளங்களை உருவாக்க மற்றும் மாற்றுவதற்கு பயன்படுத்தப்படும் முக்கிய கட்டளைகளில் சிலவற்றை சுருக்கமாக பார்க்கலாம்.

SQL பற்றி

SQL இன் சரியான உச்சரிப்பு தரவுத்தள சமூகத்தில் உள்ள சர்ச்சைக்குரிய விடயமாகும். அதன் எக்ஸ்எம்எல் தரநிலையில், அமெரிக்க நேஷனல் ஸ்டாண்டர்ட்ஸ் இன்ஸ்டிடியூட் அதிகாரபூர்வ உச்சரிப்பு "எல் வரிசை எல்" என்று அறிவித்தது. இருப்பினும், பல தரவுத்தள வல்லுநர்கள், "சீக்ல்" என்ற சொற்றொடரைக் கொண்டனர். தேர்வு உன்னுடையது.

SQL பல சுவைகள் வருகிறது. ஆரக்கிள் தரவுத்தளங்கள் அதன் தனியுரிம PL / SQL ஐ பயன்படுத்துகின்றன. மைக்ரோசாப்ட் SQL சர்வர் Transact-SQL ஐ பயன்படுத்துகிறது. வேறுபாடுகள் அனைத்தும் தொழில் தரநிலை ANSI SQL அடிப்படையிலானவை. இந்த அறிமுகம் ANSI- இணக்கமான SQL கட்டளைகள் எந்த நவீன தொடர்புடைய தரவுத்தள கணினியில் வேலை செய்கிறது.

DDL மற்றும் DML

SQL கட்டளைகளை இரண்டு முக்கிய துணை மொழிகள் பிரிக்கலாம். தரவு வரையறை மொழி (DDL) தரவுத்தளங்கள் மற்றும் தரவுத்தள பொருள்களை உருவாக்க மற்றும் அழிக்க பயன்படுத்தப்படும் கட்டளைகளை கொண்டுள்ளது. தரவுத்தள அமைப்பு DDL, தரவுத்தள நிர்வாகிகளுடன் வரையறுக்கப்பட்டு, பயனர்கள் தரவுக் கையாளுதல் மொழி (DML) ஐ உள்ளிடும், மீட்டெடுக்கவும், மாற்றிக்கொள்ளவும் பயன்படுத்தலாம்.

தரவு வரையறை மொழி கட்டளைகள்

தரவு வரையறை மொழி தரவுத்தளங்கள் மற்றும் தரவுத்தள பொருள்களை உருவாக்கவும் அழிக்கவும் பயன்படுத்தப்படுகிறது. இந்த கட்டளைகள் முதன்மையாக ஒரு தரவுத்தள திட்டத்தின் அமைப்பு மற்றும் அகற்றும் கட்டங்களின் போது தரவுத்தள நிர்வாகிகளால் பயன்படுத்தப்படுகின்றன. நான்கு அடிப்படை DDL கட்டளைகளின் கட்டமைப்பும் பயன்பாடும் இங்கே இருக்கிறது:

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

DATABASE பணியாளர்களை உருவாக்குங்கள்

உங்கள் DBMS இல் "ஊழியர்கள்" என்ற வெற்று தரவுத்தளத்தை உருவாக்குகிறது. தரவுத்தளத்தை உருவாக்கிய பின், அடுத்த கட்டடம் தரவுகளைக் கொண்ட அட்டவணையை உருவாக்க வேண்டும். CREATE கட்டளையின் மற்றொரு வகை இந்த நோக்கத்திற்காக பயன்படுத்தப்படலாம். கட்டளை:

TABLE personal_info (first_name char (20) பூஜ்ய இல்லை, last_name கரி (20) பூஜ்ய இல்லை, employee_id int null இல்லை)

தற்போதைய தரவுத்தளத்தில் "personal_info" என்று தலைப்பிடப்பட்ட அட்டவணையை நிறுவுகிறது. உதாரணமாக, அட்டவணை மூன்று பண்புகளை கொண்டுள்ளது: first_name, last_name மற்றும் employee_id சில கூடுதல் தகவல்களை சேர்த்து.

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

பணியாளர்களை பயன்படுத்துங்கள்

தரவை கையாளக்கூடிய SQL கட்டளைகளை வழங்குவதற்கு முன்னர் நீங்கள் பணிபுரியும் தரவுத்தளத்தை எப்பொழுதும் உணர வேண்டும் என்பது முக்கியம்.

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

ALTER TABLE personal_info சம்பள பணம் பூஜ்யம்

இந்த எடுத்துக்காட்டு personal_info அட்டவணைக்கு ஒரு புதிய பண்புக்கூறு சேர்க்கிறது - ஒரு பணியாளரின் சம்பளம். "பணத்தை" வாதம் ஒரு பணியாளர் சம்பளம் ஒரு டாலர்கள் மற்றும் சென்ட் வடிவங்களைப் பயன்படுத்தி சேமிக்கப்படும் என்பதைக் குறிப்பிடுகிறது. இறுதியாக, "பூஜ்ய" சொல் முக்கியமானது தரவுத்தளத்தை எந்தவொரு பணியாளருக்கும் எந்த மதிப்பையும் கொண்டிருக்காமல், இந்தத் துறையில் சரி என்று சொல்கிறது.

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

DROP TABLE personal_info

இதேபோல், முழுமையான ஊழியர் தரவுத்தளத்தை நீக்க கீழ்க்காணும் கட்டளை பயன்படுத்தப்படும்:

DATABA பணி ஊழியர்கள்

கவனமாக இந்த கட்டளையைப் பயன்படுத்தவும். DROP கட்டளை உங்கள் தரவுத்தளத்தில் இருந்து முழு தரவு கட்டமைப்புகளையும் நீக்குகிறது. தனிப்பட்ட பதிவுகளை அகற்ற விரும்பினால், தரவுக் கையாளுதல் மொழியின் DELETE கட்டளையைப் பயன்படுத்தவும்.

தரவுக் கையாளுதல் மொழி கட்டளைகள்

தரவுக் கையாளுதல் மொழி (DML) தரவுத்தள தகவலை மீட்டெடுக்க, செருக மற்றும் மாற்ற பயன்படுகிறது. தரவுத்தளத்தின் வழக்கமான செயல்பாட்டின் போது இந்த கட்டளைகள் அனைத்து தரவுத்தள பயனர்களாலும் பயன்படுத்தப்படுகின்றன.

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

INSERT INTO personal_info மதிப்புகள் ('பார்ட்', 'சிப்சன்', 12345, $ 45000)

பதிவுக்கு குறிப்பிடப்பட்ட நான்கு மதிப்புகள் உள்ளன என்பதை நினைவில் கொள்ளவும். அவை வரையறுக்கப்பட்ட வரிசையில் அட்டவணை பண்புகளை ஒத்துள்ளது: first_name, last_name, employee_id மற்றும் சம்பளம்.

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

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

Personal_info இலிருந்து SELECT *

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

Personal_info இலிருந்து கடைசி_பெயரை தேர்ந்தெடுக்கவும்

WHERE விதிமுறை குறிப்பிட்ட அளவுகோல்களை சந்திக்கின்றவர்களுக்கு மீட்டெடுக்கப்பட்ட ஆவணங்களை வரம்பிட பயன்படுத்தலாம். அனைத்து உயர்ந்த ஊதியம் பெறும் பணியாளர்களின் ஊழியர்களின் பதிவுகளை ஆய்வு செய்வதில் தலைமை நிர்வாக அதிகாரி ஆர்வமாக இருக்கலாம். $ 50,000 க்கும் அதிகமான சம்பள மதிப்பு கொண்ட பதிவுகளுக்கு தனிப்பட்ட_இன்ஃபோவில் உள்ள அனைத்து தரவையும் கீழ்க்கண்ட கட்டளையைப் பெறுகிறது:

சம்பளம்> $ 50000 எங்கே?

புதுப்பிப்பு. UPDATE கட்டளை மொத்தமாக அல்லது தனித்தனியாக ஒரு அட்டவணையில் உள்ள தகவலை மாற்ற பயன்படுகிறது. நிறுவனம் அனைத்து ஊழியர்களுக்கும் ஆண்டுதோறும் தங்கள் சம்பளத்தில் 3 சதவிகிதம் உயரும் வாழ்க்கைத் தரத்தை அளிக்கிறது என்று கருதுங்கள். தரவுத்தளத்தில் சேமித்த அனைத்து ஊழியர்களுக்கும் இதைப் பொருத்துவதற்கு பின்வரும் SQL கட்டளை பயன்படுத்தப்படலாம்:

சம்பளம் = சம்பளம் * 1.03

புதிய ஊழியர் பார்ட் சிம்ப்சன் கடமை அழைப்புக்கு மேல் மற்றும் அப்பால் செயல்திறனை நிரூபிக்கும் போது, ​​நிர்வாகமானது அவரது நட்சத்திர சாதனங்களை $ 5,000 உயர்த்துவதை அங்கீகரிக்க விரும்புகிறது. இந்த எழுச்சிக்கு பார்ட் தனித்தனியாக பயன்படுத்த WHERE பிரிவு பயன்படுத்தப்படலாம்:

புதுப்பிப்பு personal_info SET சம்பளம் = சம்பளம் + $ 5000 WHERE employee_id = 12345

அழி. இறுதியாக, DELETE கட்டளையைப் பார்ப்போம். இந்த கட்டளையின் இலக்கணத்தை மற்ற DML கட்டளைகளுக்கு ஒத்ததாக இருக்கும். துரதிர்ஷ்டவசமாக, எங்கள் சமீபத்திய பெருநிறுவன வருவாய் அறிக்கை எதிர்பார்ப்புகளை சந்திக்கவில்லை மற்றும் ஏழை பார்ட் தள்ளப்பட்டது. WHERE பிரிவில் உள்ள DELETE கட்டளை personal_info அட்டவணையில் இருந்து தனது பதிவை நீக்க பயன்படுத்தலாம்:

தனிப்பட்ட_இன்றைவிலிருந்து பணியமர்த்தல் WHERE employee_id = 12345

இணைகிறது

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

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

TABLE disciplinary_action ஐ உருவாக்கவும் (action_id int null இல்லை, employee_id int null இல்லை, கருத்துக்கள் கரி (500)

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

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

Personal_info.first_name, personal_info.last_name, personal_info, disciplinary_action WHERE personal_info.employee_id = disciplinary_action.employee_id மற்றும் personal_info.salary> 40000 மூலம்

குறியீடானது, FROM பிரிவில் சேர விரும்பும் இரண்டு அட்டவணையை குறிப்பிடுகிறது, பின்னர் WHERE பிரிவில் ஒரு அறிக்கையை, ஊழியர் அடையாளங்களுடன் பொருந்தக்கூடிய பதிவேடுகளுக்கு முடிவுகளைக் கட்டுப்படுத்தி $ 40,000 க்கும் அதிகமான சம்பள மதிப்பை சந்தித்தோம்.