Используйте TRANSLATE
для удаления нежелательных символов, а затем LENGTH
with smpl as
(
select '000-000-0000' num from dual union
select '0000000000' from dual union
select '000000000' from dual union
select '00000000000' from dual
)
select * from smpl
where LENGTH( TRANSLATE( num, '0-', '0' ) ) = 10
или сравните с 0000000000
:
with smpl as
(
select '000-000-0000' num from dual union
select '0000000000' from dual union
select '000000000' from dual union
select '00000000000' from dual
)
select * from smpl
where TRANSLATE( num, '0-', '0' ) = '0000000000'
Выходы :
| NUM |
| :----------- |
| 000-000-0000 |
| 0000000000 |
дБ <> скрипка здесь