데이터베이스에 RAW 유형의 열이 있습니다. where 절에서 어떻게 사용할 수 있습니까? 예를 들어where 절에 oracle 원시 데이터 유형
SELECT v from T where v[3]=4
데이터베이스에 RAW 유형의 열이 있습니다. where 절에서 어떻게 사용할 수 있습니까? 예를 들어where 절에 oracle 원시 데이터 유형
SELECT v from T where v[3]=4
가 RAWS와 상호 작용하는 UTL_RAW 패키지의 기능을 사용 :
즉이 작동하지 않습니다 4.
동일한 세 번째 바이트 만 값을 얻을 수
SQL> create table test (a raw(16));
Table created
SQL> insert into test values ('FF00FF00FF');
1 row inserted
SQL> select * from test where utl_raw.substr(a, 3, 1) = 'FF';
A
--------------------------------
FF00FF00FF
위의 UTL_RAW 링크는 404를 제공합니다. 오늘날까지도 다음 링크가 작동합니다. https://docs.oracle.com/cd/B28359_01/appdev.111/b28419/u_raw.htm#BABFGDDG – anjanb
@anjanb : 감사합니다. 링크를 업데이트했습니다. –
REGEXP_LIKE 함수를 사용하여 RAW 데이터 유형의 행을 선택할 수도 있습니다.
내 경우에는이 방법이 utl_raw.substr보다 약간 빠릅니다.
Retagged : - sql. – pakore