Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

ตัดตัวอักษร X ตัวจากท้ายสตริงใน MySQL ด้วย SUBSTRING และ LENGTH

เมื่อต้องการตัดทิ้งตัวอักษรจำนวนนึงจากท้ายสตริง (Right trim by count) ใน MySQL สามารถใช้ฟังก์ชัน SUBSTRING() ร่วมกับ LENGTH() คำนวณตำแหน่งสิ้นสุดใหม่

รูปแบบคำสั่ง

SUBSTRING(column, 1, LENGTH(column) - N)

โดย N = จำนวนตัวอักษรที่ต้องการตัดจากท้าย

ตัวอย่างการใช้งาน

สร้างตารางและเพิ่มชื่อนักเรียน:

mysql> create table DemoTable1329 (StudentName varchar(40));
mysql> insert into DemoTable1329 values('David Miller');
mysql> insert into DemoTable1329 values('Chris Brown');
mysql> insert into DemoTable1329 values('Adam Smith');
mysql> insert into DemoTable1329 values('John Doe');

ข้อมูลต้นฉบับ:

+--------------+
| StudentName  |
+--------------+
| David Miller |
| Chris Brown  |
| Adam Smith   |
| John Doe     |
+--------------+

คำสั่งตัด 5 ตัวอักษรจากท้าย

mysql> select substring(StudentName, 1, length(StudentName) - 5) from DemoTable1329;

ผลลัพธ์

+----------------------------------------------------+
| substring(StudentName, 1, length(StudentName) - 5) |
+----------------------------------------------------+
| David M                                            |
| Chris                                              |
| Adam                                               |
| Joh                                                |
+----------------------------------------------------+

คำอธิบาย:

  • LENGTH(StudentName) ความยาวทั้งหมดของสตริง
  • LENGTH(...) - 5 ตำแหน่งสุดท้ายใหม่ (ตัด 5 ตัวจากท้าย)
  • SUBSTRING(str, 1, new_length) ดึงตัวอักษรตั้งแต่ตัวแรก ถึงตำแหน่งใหม่
  • คำเตือน: หากสตริงสั้นกว่า N ตัวอักษร ผลลัพธ์อาจเป็นสตริงว่างหรือผิดพลาด ควรตรวจสอบความยาวก่อน