web-dev-qa-db-ja.com

Oracle SQL-REGEXP_LIKEにはa-zまたはA-Z以外の文字が含まれています

A-zまたはA-Z以外の文字を含むすべてのレコードを選択するクエリを作成したい

こんな感じ

SELECT * FROM mytable WHERE REGEXP_LIKE(column_1, '![A-Z] [a-z]')

21
Tom

^は、文字クラスを否定します。

SELECT * FROM mytable WHERE REGEXP_LIKE(column_1, '[^A-Za-z]')
35

何かのようなもの

select *
  from foo
 where regexp_like( col1, '[^[:alpha:]]' ) ;

動作するはずです

SQL> create table foo( col1 varchar2(100) );

Table created.

SQL> insert into foo values( 'abc' );

1 row created.

SQL> insert into foo values( 'abc123' );

1 row created.

SQL> insert into foo values( 'def' );

1 row created.

SQL> select *
  2    from foo
  3   where regexp_like( col1, '[^[:alpha:]]' ) ;

COL1
--------------------------------------------------------------------------------
abc123
9
Justin Cave

これを試して:

select * from T_PARTNER 
where C_DISTRIBUTOR_TYPE_ID = 6 and
translate(C_PARTNER_ID, '.1234567890', '.') is null;
0
venky

a-zおよびA-Zのいずれも含まないようにする場合:

SELECT * FROM mytable WHERE NOT REGEXP_LIKE(column_1, '[A-Za-z]')

何かのようなもの:

「98763045098」または「!%436%$ 7%$ *#」

またはペルシャ語、アラビア語などのその他の言語...

「خلیجفارس」

0
Omid-RH