함수

2024. 5. 31. 19:18SQL

함수
    - 컬럼 값이나 지정된 값을 읽어 연산한 결과를 반환하는 것
    - 단일 행 함수 : N개의 행의 컬럼 값을 전달하여 N개의 결과가 반환
    - 그룹 함수 : N개의 행의 컬럼 값을 전달하여 1개의 결과가 반환
                그룹의 수가 늘어나면 그룹의 수 만큼 결과를 반환
    
    - 함수는 SELECT절, WHERE절, ORDER BY절, GROUPT BY절, HAVING절에서 사용 가능
        1. SELECT절 : 찾는 기준이 아닌 표기되는 총합, 계산 결과 등에 대한 것을 정리해 놓은 컬럼
                        -> 정리해서 보여주기
        
        2. WHERE절 : 찾는 조건이 되는 행을 작성해줌. 길이, 크기, 결과가 조건에 부합하는 것만 볼 수 있도록 설정
                        -> 정리의 기준을 제시. 내가 원하는 것만 보기

 

단일 행 함수

 

문자열 관련 함수
LENGTH(문자열 OR 컬럼명) : 문자열의 길이 반환

 

결과



INSTR(문자열 OR 컬럼명, '찾을 문자열', 찾는 것을 시작할 위치, 순번)
찾을 시작 위치부터 지정된 순번에 따라 찾은 문자열의 시작 위치를 반환

LIKE와 INSTR 차이점

LIKE : 특정 문자가 들어갔는지 검색

INSTR : 특정 문자가 몇 번째에 있는지 검색


SUBSTR(문자열 OR 컬럼명, 시작위치, 길이)
문자열을 시작 위치부터 지정된 길이만큼 잘라내서 반환
길이를 작성하지 않은 경우 시작 위치부터 끝까지 반환

 

그룹 관련 함수

 

 COUNT : 행의 총 개수를 셀 때 사용하는 함수
     COUNT(*) : 조회된 모든 행의 개수 반환
     COUNT(컬럼명) : 지정된 컬럼에서 값이 NULL이 아닌 행의 개수 반환(NULL은 제외한 개수를 작성)
     COUNT(DISTINCT 컬럼명) : 지정된 컬럼에서 중복 값을 제외한 행의 반환

 

 

AVG : 평균

 

반올림(ROUND) 결과

 

 

공백 관련 함수

TRIM([옵션] [문자열 OR 컬럼명] FROM [문자열 OR 컬럼명])
문자열의 앞쪽 OR 뒤쪽 OR 양쪽에 존재하는 지정된 문자열 제거

옵션 : 앞쪽(LEADING), 뒤쪽(TRAILING), 양쪽(BOTH) -> 기본값

 

TRIM의 경우 문자 1개만 가능. '' 안에 문자가 2개 이상 들어가면 에러가 발생 EX) 스페이스바 2번

 

왼쪽부터 LEADING, TRAILING, BOTH

 

 

REPLACE : 특정 문자열을 대체할 때 사용
    REPLACE(문자열 OR 컬럼명, 찾을 문자열, 바꿀 문자열)

 

원형
REPLACE 실행 결과

 

 

TO_NUMBER

    TO_NUMBER('문자열');

 

ORACLE SQL에만 존재
문자열을 숫자 데이터 형식으로 변환하는 데 사용
추후 JAVA INT 값이 아니라 STRING 값으로 넘어오고 변환이 필요할 때 TO_NUMBER 사용할 일이 있을 수 있음

 

-- 문자열을 숫자로 변환하는 코드
SELECT TO_NUMBER('12345') FROM DUAL;

'SQL' 카테고리의 다른 글

날짜  (0) 2024.06.03
INSERT, UPDATE, DELETE  (0) 2024.05.31
WHERE  (0) 2024.05.31
SELECT  (0) 2024.05.31
TABLE 설정  (0) 2024.05.31