Tôi biết là muộn nhưng tôi chỉ muốn chia sẻ về những gì tôi đã làm được cho việc này. Tôi không được phép thêm một bảng hoặc trình kích hoạt khác, vì vậy tôi cần tạo nó trong một truy vấn duy nhất khi chèn. Đối với trường hợp của bạn, bạn có thể thử truy vấn này.
CREATE TABLE YOURTABLE(
IDNUMBER VARCHAR(7) NOT NULL PRIMARY KEY,
ENAME VARCHAR(30) not null
);
Thực hiện chọn và sử dụng truy vấn chọn này và lưu vào tham số @IDNUMBER
(SELECT IFNULL
(CONCAT('LHPL',LPAD(
(SUBSTRING_INDEX
(MAX(`IDNUMBER`), 'LHPL',-1) + 1), 5, '0')), 'LHPL001')
AS 'IDNUMBER' FROM YOURTABLE ORDER BY `IDNUMBER` ASC)
Và sau đó truy vấn Chèn sẽ là:
INSERT INTO YOURTABLE(IDNUMBER, ENAME) VALUES
(@IDNUMBER, 'EMPLOYEE NAME');
Kết quả sẽ giống với câu trả lời khác nhưng sự khác biệt là bạn sẽ không cần tạo một bảng hoặc kích hoạt khác. Tôi hy vọng rằng tôi có thể giúp một ai đó có trường hợp tương tự như tôi.