ฟังก์ชัน RIGHT() ใน MySQL ใช้สำหรับดึงข้อความจากทางด้านขวาของ string ตามจำนวนอักขระที่ระบุ
ประโยชน์ของฟังก์ชัน RIGHT()
- ใช้แยกข้อมูลบางส่วนจากท้ายข้อความ เช่น
- รหัสสินค้าจากด้านท้าย เช่น (
PROD-12345ดึงมาเฉพาะ'12345') - วัน-เดือน-ปี (
2025-04-02ดึงมาเฉพาะวันที่'02') - หมายเลขเวอร์ชัน, นามสกุลไฟล์ ฯลฯ
- รหัสสินค้าจากด้านท้าย เช่น (
- ใช้ร่วมกับ
WHERE,LIKE, หรือCONCAT()เพื่อวิเคราะห์ข้อมูล string
รูปแบบการใช้งาน
RIGHT(str, length)
strคือข้อความต้นฉบับlengthคือจำนวนอักขระที่ต้องการดึงจากด้านขวา- ถ้า
lengthมากกว่าความยาวของstrจะคืนค่าเป็นข้อความทั้งหมด - ถ้า
strเป็นNULLจะคืนค่าNULL
- ถ้า
ตัวอย่างการใช้งาน
SQL
SELECT RIGHT('HelloWorld', 5); -- ผลลัพธ์: 'World'
SELECT RIGHT('2025-04-02', 2); -- ผลลัพธ์: '02'
SELECT RIGHT('Product-12345', 5); -- ผลลัพธ์: '12345'
SELECT RIGHT('Hi', 10); -- ผลลัพธ์: 'Hi' (ไม่ตัดเกิน)
SELECT RIGHT(NULL, 4); -- ผลลัพธ์: NULLดึงตัวอักษร 3 ตัวสุดท้ายจากชื่อภาพยนตร์ (title)
SQL
SELECT title,
RIGHT(title, 3) AS last_chars
FROM film
LIMIT 10;- ใช้แยกคำลงท้าย เช่น
MAN,ING,ION - สามารถนำไปจัดกลุ่มหรือวิเคราะห์แนวของชื่อภาพยนตร์ได้
ดึงวันที่ (2 หลักสุดท้าย) จากวันที่เช่า (rental_date)
SQL
SELECT rental_id, rental_date,
RIGHT(rental_date, 2) AS rental_day
FROM rental
LIMIT 10;- วันที่ใน
rental_dateเป็นแบบYYYY-MM-DD HH:MM:SS RIGHT()จะดึงเลขสองหลักสุดท้ายจากข้อความ ซึ่งเป็น “วินาที” (ต้องระวังกรณีนี้!)- ถ้าอยากได้ “วัน” จริง ควรใช้
DAY(rental_date)หรือDATE_FORMAT()จะแม่นยำกว่า