select XXX from tablename where ltrim(substr(XXX, lengthb(XXX) - 2, 2),'1234567890') is not null;
实测数据:CREATE TABLE T114 ( ID VARCHAR2(20), F1 VARCHAR2(20) );INSERT INTO T114 VALUES('01', 'LS12345'); INSERT INTO T114 VALUES('02', '12341'); INSERT INTO T114 VALUES('03', '23415'); INSERT INTO T114 VALUES('04', '34144AA'); INSERT INTO T114 VALUES('05', '12341FJ'); 实测结果:
我第一想到的就是正则 如下:SQL> ed 已写入 file afiedt.buf 1 CREATE TABLE test( 2 col VARCHAR2(10) 3* ) SQL> /表已创建。SQL> @c:\sql.sql;已创建 1 行。 已创建 1 行。 已创建 1 行。 已创建 1 行。 已创建 1 行。SQL> select * from test;COL ---------- LS12345 12341 23415 34144AA 12341FJSQL> ed 已写入 file afiedt.buf 1 SELECT * FROM test 2* WHERE regexp_like(col,'[^[:alpha:]]$') SQL> /COL ---------- LS12345 12341 23415
from tablename
where ltrim(substr(XXX, lengthb(XXX) - 2, 2),'1234567890') is not null;
(
ID VARCHAR2(20),
F1 VARCHAR2(20)
);INSERT INTO T114 VALUES('01', 'LS12345');
INSERT INTO T114 VALUES('02', '12341');
INSERT INTO T114 VALUES('03', '23415');
INSERT INTO T114 VALUES('04', '34144AA');
INSERT INTO T114 VALUES('05', '12341FJ');
实测结果:
如下:SQL> ed
已写入 file afiedt.buf 1 CREATE TABLE test(
2 col VARCHAR2(10)
3* )
SQL> /表已创建。SQL> @c:\sql.sql;已创建 1 行。
已创建 1 行。
已创建 1 行。
已创建 1 行。
已创建 1 行。SQL> select * from test;COL
----------
LS12345
12341
23415
34144AA
12341FJSQL> ed
已写入 file afiedt.buf 1 SELECT * FROM test
2* WHERE regexp_like(col,'[^[:alpha:]]$')
SQL> /COL
----------
LS12345
12341
23415