개발새발

[SQL] SQL 함수 아카이브 (feat.ORACLE) 본문

SQL

[SQL] SQL 함수 아카이브 (feat.ORACLE)

칸쵸. 2023. 10. 18. 02:18
728x90

앞으로 배우는 SQL 함수들을 실시간..은 아니지만 그래도 꾸준히 업데이트 하겠습니다
 

과연 얼마나 갈런지

ORACLE 기준으로 업데이트 할 수 있음 주의
+ 가끔 함수 아닌 키워드도 꼽사리 낄 수 있음 주의
 
'ctrl + F' 로 검색해서 찾으세요


1. 문자열 함수

 

  • || (쌍파이프) : 문자열이나 컬럼을 합쳐줌
SELECT
department_name || '의 정원은' || capacity || '명 입니다.' as "학과별 정원"
FROM tb_department;

 

 

  • CONCAT : 함수 안에 연결할 문자들 넣으면 연결해서 출력해줌 (ORACLE 사용법 다름 주의)
SELECT CONCAT(department_name, '의 정원은 ', capacity, '명 입니다.')
FROM tb_department;
--ORACLE은 CONCAT 매개변수를 두 개만 받기 때문에 중첩문을 사용해야함
SELECT CONCAT(CONCAT(CONCAT(department_name, '의 정원은 '), capacity), '명 입니다.')
FROM tb_department;

 

단일문으로 쓰면 오류가 나지만
중첩문으로 쓰면 잘 돌아간다

 

  • INSTR : 문자열에서 특정 문자 위치
--현재 휴학중인 여학생들의 정보
SELECT student_no, student_name, student_ssn ,absence_yn
FROM tb_student 
--student_ssn : 주민번호 > 8번째 자리가 2인 사람의 정보를 추출
WHERE absence_yn = 'Y' AND INSTR(student_ssn,'2')=8;

 

INSTR(column,'값')을 사용한 예시

 

  • SUBSTR : 문자열 일부 추출
--SUBSTR("문자열", "시작위치", "길이")
--포켓몬 이름 문자열 첫번째 자리부터 두 글자 출력
SELECT name, SUBSTR(name,1,2) FROM nationalpokedex;

 

SUBSTR("문자열", 1, 2) 사용

'SQL' 카테고리의 다른 글

[SQL] 제약조건(Constraint)에 관한 이야기  (2) 2023.10.22
[SQL] WHERE IN (feat.다중검색)  (0) 2023.10.18
[SQL] RDBMS, SQL, 그리고 Oracle의 아내  (4) 2023.10.12