தொகுதி பாடங்கள் (1/4)
பட்டியல்கள் மற்றும் வரம்புகள்: IN மற்றும் BETWEEN
முந்தைய மாட்யூல்களில் WHERE மூலம் சமத்துவங்களைப் பயன்படுத்தி வடிகட்டியுள்ளீர்கள்
ஒப்பீடுகள்: salary > 30000, department_id = 1, hired_on >= '2020-01-01'.
ஆனால் நிபந்தனை "மதிப்பு இந்த ஐந்தில் ஒன்றாக இருக்க வேண்டும்",
சங்கிலியால் பிணைக்கப்பட்ட ORs பைல் அப்:
-- Heavy and fragile: adding a department means touching the query
SELECT first_name, last_name
FROM employees
WHERE department_id = 1
OR department_id = 2
OR department_id = 3;இதை படிக்கக்கூடியதாக மாற்ற SQL இரண்டு குறுக்குவழிகளை வழங்குகிறது.
IN - "இதில் ஒன்று"
IN (...) ஆபரேட்டர் மதிப்புகளின் பட்டியலை எடுத்து, true ஐ வழங்குகிறது
நெடுவரிசையில் ஏதேனும் சமம்:
SELECT first_name, last_name, department_id
FROM employees
WHERE department_id IN (1, 2, 3);இது மேலே உள்ள ORs ஐப் போலவே உள்ளது, ஆனால் மிகவும் படிக்கக்கூடியது: இது
"department_id எங்கே (1, 2, 3)" என இயல்பாகப் படிக்கிறது. அதுவும் வேலை செய்கிறது
சரங்கள் மற்றும் தேதிகளுடன்:
SELECT name
FROM departments
WHERE city IN ('Milano', 'Roma');இதற்கு நேர்மாறாக NOT IN (...) உள்ளது:
-- Employees who are NOT in Engineering or Sales:
SELECT first_name, last_name
FROM employees
WHERE department_id NOT IN (1, 2);இடையில் — "A மற்றும் B இடையே, இரண்டையும் உள்ளடக்கியது"
நிபந்தனை தொடர்ச்சியான வரம்பாக இருக்கும்போது (எண்கள், தேதிகள்), அதற்குப் பதிலாக
எழுதுவது column >= A AND column <= B உங்களிடம் BETWEEN A AND B:
-- Employees with a salary between 30000 and 50000 (both inclusive):
SELECT first_name, last_name, salary
FROM employees
WHERE salary BETWEEN 30000 AND 50000;BETWEEN இரண்டு இறுதிப்புள்ளிகளிலும் உள்ளடக்கிய. இது மிகவும் நன்றாக வேலை செய்கிறது
தேதிகளும்:
-- Everyone hired in 2020:
SELECT first_name, last_name, hired_on
FROM employees
WHERE hired_on BETWEEN '2020-01-01' AND '2020-12-31';முயற்சி செய்து பாருங்கள்
30000 முதல் 50000 வரை சம்பளம் உள்ள ஊழியர்களின் முதல் பெயர் (முதல்_பெயர்), கடைசி பெயர் (கடைசி_பெயர்) மற்றும் சம்பளம் (சம்பளம்) ஆகியவற்றைக் காட்டவும். மூன்று நெடுவரிசைகள்.
குறிப்பைக் காட்டு
AND உடன் இணைக்கப்பட்ட இரண்டு ஒப்பீடுகளை விட 30000 மற்றும் 50000 இடையே பயன்படுத்தவும் - மிகவும் கச்சிதமான மற்றும் படிக்கக்கூடியது.
3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்
மதிப்பாய்வு பயிற்சி
1, 2 அல்லது 4 துறைகளில் பணிபுரியும் ஊழியர்களின் முதல் பெயர் (முதல்_பெயர்) மற்றும் கடைசிப் பெயர் (இறுதி_பெயர்) ஆகியவற்றைப் பட்டியலிடவும் (IN ஐப் பயன்படுத்தவும்). கடைசி பெயரில் அகரவரிசைப்படி ஆர்டர் செய்யவும்.
குறிப்பைக் காட்டு
WHERE Department_id IN (1, 2, 4) என்பது மூன்று ORகளின் சிறிய பதிப்பாகும்.
3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்