Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

MySQL query xóa chữ số đầu tiên của chuỗi

Giải pháp

Sử dụng hàm SUBSTR(string, start_position) hoặc SUBSTRING(string, start_position) để lấy chuỗi con từ vị trí thứ 2 trở đi.

Cú pháp

UPDATE ten_bang
SET ten_cot = SUBSTR(ten_cot, 2);

Ví dụ

Tạo bảng:

CREATE TABLE DemoTable607 (Value VARCHAR(100));
INSERT INTO DemoTable607 VALUES
('83967364'), ('10939432'), ('932111');

Cập nhật xóa ký tự đầu:

UPDATE DemoTable607 SET Value = SUBSTR(Value, 2);

Kết quả:

+---------+
| Value   |
+---------+
| 3967364 |
| 0939432 |
| 32111   |
+---------+

Các biến thể

Yêu cầuHàmVí dụ
Xóa 1 ký tự đầuSUBSTR(col, 2)'abc' → 'bc'
Xóa N ký tự đầuSUBSTR(col, N+1)N=3: 'abcdef' → 'def'
Lấy N ký tự đầuSUBSTR(col, 1, N) hoặc LEFT(col, N)N=3: 'abcdef' → 'abc'
Xóa N ký tự cuốiSUBSTR(col, 1, LENGTH(col)-N) hoặc LEFT(col, LENGTH(col)-N)

Lưu ý

  • SUBSTR index bắt đầu từ 1 (khác nhiều ngôn ngữ lập trình bắt đầu từ 0).
  • Nếu chuỗi ngắn hơn vị trí start → trả về chuỗi rỗng '' (không phải NULL).
  • Cập nhật trực tiếp trên bảng (UPDATE) thay đổi dữ liệu vĩnh viễn → hãy backup hoặc test SELECT trước.

SELECT chỉ xem (không sửa dữ liệu)

SELECT Value, SUBSTR(Value, 2) AS Value_Without_First_Digit
FROM DemoTable607;