Để tìm nạp các hàng trong đó ký tự đầu tiên không phải là chữ và số, bạn có thể sử dụng biểu thức chính quy sau.
Trường hợp 1 - Nếu bạn muốn những hàng bắt đầu từ một chữ số, bạn có thể sử dụng cú pháp sau -
CHỌN * TỪ yourTableNameWHERE yourColumnName REGEXP '^ [0-9]';
Trường hợp 2 - Nếu bạn muốn những hàng bắt đầu từ chữ và số, hãy sử dụng cú pháp sau -
CHỌN * TỪ yourTableNameWHERE yourColumnName REGEXP '^ [^ 0-9A-Za-z]';
Để hiểu cú pháp trên, chúng ta hãy tạo một bảng. Truy vấn để tạo bảng như sau -
mysql> create table getRowsFirstNotAlphanumeric-> (-> Id int NOT NULL AUTO_INCREMENT, -> UserPassword varchar (20), -> PRIMARY KEY (Id) ->); Truy vấn OK, 0 hàng bị ảnh hưởng (0,61 giây)Chèn một số bản ghi trong bảng bằng lệnh chèn. Truy vấn như sau -
mysql> insert vào getRowsFirstNotAlphanumeric (UserPassword) giá trị ('@ 123456'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,19 giây) mysql> chèn vào getRowsFirstNotAlphanumeric (UserPassword) giá trị ('# 7666666'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,22 giây) mysql> chèn vào giá trị getRowsFirstNotAlphanumeric (UserPassword) ('98876Carol'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,16 giây) mysql> chèn vào giá trị getRowsFirstNotAlphanumeric (UserPassword) ('$ 12345Carol'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,09 giây) mysql> chèn vào giá trị getRowsFirstNotAlphanumeric (UserPassword) ('% David567'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,10 giây) mysql> chèn vào giá trị getRowsFirstNotAlphanumeric (UserPassword) ('123456Larry'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,07 giây) mysql> chèn vào giá trị getRowsFirstNotAlphanumeric (UserPassword) ('909Robert'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,12 giây) mysql> chèn vào giá trị getRowsFirstNotAlphanumeric (UserPassword) ('3333Maxwell'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,09 giây) mysql> chèn vào getRowsFirstNotAlphanumeric (UserPassword) va lues ('_ 123456Bob'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,10 giây) mysql> chèn vào giá trị getRowsFirstNotAlphanumeric (UserPassword) ('5767676Chris'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,10 giây) mysql> chèn vào getRowsFirstNotAlphanumeric (UserPassFirstNotAlphanumeric) giá trị ('(88883Mike'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,11 giây)Bây giờ bạn có thể hiển thị tất cả các bản ghi từ bảng bằng cách sử dụng câu lệnh select. Truy vấn như sau -
mysql> select * from getRowsFirstNotAlphanumeric;Sau đây là kết quả -
+ ---- + -------------- + | Id | Mật khẩu người dùng | + ---- + -------------- + | 1 | @ 123456 || 2 | # 7666666 || 3 | 98876Carol || 4 | $ 12345Carol || 5 | % David567 || 6 | 123456Larry || 7 | 909Robert || 8 | 3333Maxwell || 9 | _123456Bob || 10 | 5767676Chris || 11 | (88883Mike | + ---- + -------------- + 11 hàng trong bộ (0,00 giây)Trường hợp 1 −Đây là truy vấn để lấy tất cả các hàng không bắt đầu từ chữ và số -
mysql> SELECT * FROM getRowsFirstNotAlphanumeric-> WHERE UserPassword REGEXP '^ [0-9]';Sau đây là kết quả -
+ ---- + -------------- + | Id | Mật khẩu người dùng | + ---- + -------------- + | 3 | 98876Carol || 6 | 123456Larry || 7 | 909Robert || 8 | 3333Maxwell || 10 | 5767676Chris | + ---- + -------------- + 5 hàng trong bộ (0,00 giây)Trường hợp 2: Đây là truy vấn để lấy tất cả các hàng bắt đầu từ chữ và số:
mysql> SELECT * FROM getRowsFirstNotAlphanumeric-> WHERE UserPassword REGEXP '^ [^ 0-9A-Za-z]';Sau đây là kết quả:
+ ---- + -------------- + | Id | Mật khẩu người dùng | + ---- + -------------- + | 1 | @ 123456 || 2 | # 7666666 || 4 | $ 12345Carol || 5 | % David567 || 9 | _123456Bob || 11 | (88883Mike | + ---- + -------------- + 6 hàng trong bộ (0,00 giây)