[SQL] 오라클 DB : 어떻게 사건을 무시하고 쿼리를 작성할 수있다?
SQL오라클 DB : 어떻게 사건을 무시하고 쿼리를 작성할 수있다?
제가 제목에 쓴 것처럼, 나는 SQL 쿼리, 오라클 DB에서 실행, 말을 할 수 있습니다 :
SELECT * FROM TABLE WHERE TABLE.NAME Like 'IgNoReCaSe'
내가하고 싶은 경우 쿼리 중 하나 "IGNORECASE", "IGNORECASE"또는 이들의 조합을 반환하는 것이, 어떻게 수행 할 수 있습니다?
이게 가능해?
해결법
-
==============================
1.당신은 대소 문자를 구별로 설정 비교에 ALTER SESSION 문을 사용할 수 있습니다. 이 FAQ를 참조하십시오.
당신은 대소 문자를 구별로 설정 비교에 ALTER SESSION 문을 사용할 수 있습니다. 이 FAQ를 참조하십시오.
alter session set NLS_COMP=ANSI; alter session set NLS_SORT=BINARY_CI;
모든이 원래 대답 한 후 팔년를 방문하는 사람들은 (10gR2의 경우) 승인되었습니다 :
10gR2의 후, NLS_COMP 설정은`언어 적이어야합니다
ALTER SESSION SET NLS_COMP=LINGUISTIC;
-
==============================
2.
Select * from table where upper(table.name) like upper('IgNoreCaSe');
이와 달리, 대신 상부 낮다.
-
==============================
3.당신은 하나를 사용하고 WHERE 조건의 양쪽에 낮추거나 위 기능을 할 수 있습니다
당신은 하나를 사용하고 WHERE 조건의 양쪽에 낮추거나 위 기능을 할 수 있습니다
-
==============================
4.또한 정규 표현식을 사용할 수 있습니다 :
또한 정규 표현식을 사용할 수 있습니다 :
SELECT * FROM TABLE WHERE REGEXP_LIKE (TABLE.NAME,'IgNoReCaSe','i');
-
==============================
5.당신은 당신의 쿼리에서 위 () 함수를 사용할 수 있으며 함수 기반 인덱스를 사용하여 성능을 향상시키기 위해
당신은 당신의 쿼리에서 위 () 함수를 사용할 수 있으며 함수 기반 인덱스를 사용하여 성능을 향상시키기 위해
CREATE INDEX upper_index_name ON table(upper(name))
-
==============================
6.... 또한 쿼리의 상부 또는 하부 외부로 변환을 수행 :
... 또한 쿼리의 상부 또는 하부 외부로 변환을 수행 :
tableName:= UPPER(someValue || '%');
...
Select * from table where upper(table.name) like tableName
-
==============================
7.당신은 상단에 두 값을 변환하거나 상부 또는 하부 기능을 사용하여 소문자 수 있습니다 :
당신은 상단에 두 값을 변환하거나 상부 또는 하부 기능을 사용하여 소문자 수 있습니다 :
Select * from table where upper(table.name) like upper('IgNoreCaSe')
또는
Select * from table where lower(table.name) like lower('IgNoreCaSe');
-
==============================
8.또한 명백한 잊지 마세요, 테이블의 데이터는 경우가 필요합니까? 당신은 행 삽입 이미 낮은 경우와 처음부터 함께 할 (또는 소문자로 기존 DB 행을 변환) 할 수있다.
또한 명백한 잊지 마세요, 테이블의 데이터는 경우가 필요합니까? 당신은 행 삽입 이미 낮은 경우와 처음부터 함께 할 (또는 소문자로 기존 DB 행을 변환) 할 수있다.
from https://stackoverflow.com/questions/1031844/oracle-db-how-can-i-write-query-ignoring-case by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] ROW_NUMBER에 필요한 동적 피벗 () (0) | 2020.07.02 |
---|---|
[SQL] 계획을 설명 MySQL의에서 "멀리 최적화 된 선택 테이블"의 의미 (0) | 2020.07.02 |
[SQL] 가능한 2012 SQL 서버에 SQL 서버 2014의 백업을 복원? (0) | 2020.07.02 |
[SQL] 왜 VARCHAR (최대)를 사용하지? (0) | 2020.07.02 |
[SQL] SQL Server 데이터베이스 정렬 변경 (0) | 2020.07.02 |