본문 바로가기
반응형

Study/Database19

Oracle DECODE함수 조건식 조건에 따라서 그 조건이 참일때와 그렇지 않을때를 구별해 각각의 조건에 따라 작성된 코드가 수행되는것이 조건문이다. Oracle 쿼리에서도 이러한 조건식을 작성할때가 있는데 이때 주로 사용하는것이 DECODE와 CASE WHEN THEN 이다. 엄밀히 구별해보자면 DECODE는 오라클 함수, CASE WHEN THEN은 SQL 문법이다. DECODE와 CASE WHEN THEN 둘다 조건식에 따른 결과물을 다양하게 보여주는 기능을 하지만 DECODE는 표준 SQL 함수는 아니라고 한다. 따라서 최근에는 CASE WHEN THEN 사용을 좀더 권장하기도 한다는데... 사실 DECODE를 알아보기 위해서 검색하다가 표준 SQL 문이 아니라고 해서, CASE WHEN THEN까지 함께 정리하고자 한다... 2023. 6. 26.
Null 치환 함수인 NVL 함수에 대해서 알아보자 Null값이 들어있는 Table을 Select 쿼리로 조회해보면 기본적으로 Null 값이 들어있는 컬럼들은 조회가 되질 않는다. 이럴때 Null 치환 함수인 NVL을 사용하여 NULL인 값을 다른값으로 대체해서 출력하게 하는 방법이 있다. SELECT NVL(Salary, 0) FROM EMP 이런식으로 사용하는데 Salary 컬럼에서 Null인 값들은 0으로 표시해주고 조회하겠다는 의미이다. 이는 정확한 데이터의 조회 결과값을 위하여 사용된다. Null을 제외한 조회 결과는 불완전성과 연산 오류를 초래할수 있기 때문이며 데이터의 일관성과 가독성을 유지하기 위해서 사용해야하고, 실무에서도 상당히 자주 사용되는 함수라고 한다. 상당히 사용법이 간단하지만, 생각보다 사용할일이 없었다. 하지만 앞으로 NULL.. 2023. 6. 21.
Oracle CONCAT에 대해서 알아보자. Oracle database에서는 || 연결 연산자를 이용하여 문자열을 이어 붙일수 있다. 은근히 쓰일일이 없다고 생각할수 있지만, 꼭 그렇게 생각하고 있으면 은근히 쓰일일이 많다. 사실 database 안에서 직접적으로 쓸일은 그동안 경험상 많이 없었다. 개인적으로 난 DB를 연동해서 웹개발을 하면, Spring에서 Mybatis를 이용하여 쿼리문을 날릴때 종종 사용하곤 한다. mybatis는 Mapper.xml에 입력된 쿼리문과 쿼리 id를 가지고 그 id를 호출하여 상황에 맞게 쿼리문을 수행하게 되는데. 이때 동적으로 사용자가 입력한 값(Parameter)를 이용하여 쿼리문의 조건이나 조회할 값들이 수시로 변경되기 때문에 동적쿼리문을 사용해야한다. 아래의 쿼리문은 어제 작성해본 쿼리문이다. sele.. 2023. 6. 20.
[PostgreSQL] PostGreSQL 기본 CRUD 쿼리문 정리 이번에 팀프로젝트를 진행하면서 처음으로 PostgreSQL 이라는 RDBMS를 사용하게 되었다. 수업시간에 익히 들어온 DBMS 이름들에 비해 조금은 생소하지만, 알고보니 OpenSource 쪽에서는 나름 3~4위정도 하는 프로그램이라고 한다. 접해보지 않은 DBMS 프로그램이라 공부가 필요할듯하여 기록하면서 스스로 터득해나가려고 한다. 먼저 기본적인 CRUD 쿼리문에 대해서 알아보자. -- 데이터베이스 생성 쿼리문 -- tablespace가 있을시 create database 데이터베이스명; -- tablespace가 없을시 create database 데이터베이스명 tablespace 테이블스페이스명; -- 데이터베이스 지우기 drop database 데이터베이스명; -- 스키마 만들기 create .. 2023. 3. 15.
반응형