การจัดข้อความชิดขวา (Right-align) ใน MySQL ด้วย LPAD()
ใช้ LPAD(str, length, pad_string) เติม Padding ด้านซ้าย จนครบความยาวที่กำหนด ทำให้ข้อความชิดขวา
SELECT LPAD(yourColumn, total_width, ' ') FROM yourTable;
ตัวอย่างการใช้งาน
สร้างตารางและเพิ่มชื่อ:
mysql> create table DemoTable (FullName varchar(100));
mysql> insert into DemoTable values('John Smith');
mysql> insert into DemoTable values('David Miller');
mysql> insert into DemoTable values('Sam Williams');
mysql> insert into DemoTable values('Carol Taylor');
ข้อมูลต้นฉบับ:
+--------------+ | FullName | +--------------+ | John Smith | | David Miller | | Sam Williams | | Carol Taylor | +--------------+
คิวรีจัดชิดขวาความกว้าง 70 ตัวอักษร:
mysql> select lpad(FullName, 70, ' ') from DemoTable;
+------------------------------------------------------------------------+ | lpad(FullName, 70, ' ') | +------------------------------------------------------------------------+ | John Smith | | David Miller | | Sam Williams | | Carol Taylor | +------------------------------------------------------------------------+
ฟังก์ชันคู่:
RPAD(str, len, pad)- จัดชิดซ้าย (Padding ขวา)TRIM()- ตัด Space หน้า/หลัง
ข้อจำกัด: ผลลัพธ์เป็น String แสดงผลใน Terminal/Monospace Font จะเห็นชัด | ใน Web/App ควรจัด Alignment ด้วย CSS (text-align: right) แทน
ตัวเลขจัดชิดขวา (สำหรับรายงาน): LPAD(CAST(num AS CHAR), 15, ' ') หรือ FORMAT(num, 2) แล้ว LPAD