MySQL การใช้งานฟังก์ชัน RIGHT()

ฟังก์ชัน 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() จะแม่นยำกว่า
แชร์เรื่องนี้