작성일자 : 2023-11-11 Ver 0.1.1 1. Intro Oracle에서 쿼리를 작성할 때, Tableau에서 계산식을 작성할때 잘 작성한 쿼리와 식은 식을 간단하게 작성했을 때이다. 2줄로 작성하던 식을 함수를 이용해 1줄로 줄일 수 있다면, 함수에 대한 이해가 있다는 전제가 필요하지만 식이 더 간단해질 수 있다. Oracle에서 이렇게 간단하게 쿼리를 작성할 수 있게 도와주는 함수 중 하나는 바로 LNNVL이다. LNNVL 함수는 1) 해당 컬럼에 NULL이 존재할 경우 NULL 처리와 2) 조건문을 한 번에 처리하고자 할때 사용한다. 컬럼이 NULL인 경우 OR 함수 내부 조건이 FALSE인 경우 SQL Language Reference docs.oracle.com 2. How to Int..
SQL
작성일자 : 2023-11-10 Ver 0.1.1 1. Intro 쿼리를 작성하다 보면 자주는 아니지만, 때때로 Table 구조에 대한 확인이 필요한 경우가 있다. 어떤 컬럼들이 있는지, 컬럼들이 어떤 형식을 가지고 있는지, NULL 여부 등과 같은 정보들은 꽤 자주 확인해야할 정보들이다. Tableau에서는 데이터들의 데이터라는 성격으로 Meta Data 라고 불리는데, Oracle에서 테이블의 컬럼이 많고, 정확히 컬럼명이 기억나지 않을 때, 그럴 때마다 SELECT * FROM Table을 하기에는 불편하고 번거롭다. 이런 경우를 위해 Meta Data를 조회할 수 있는 쿼리문을 통해 원하는 정보를 확인할 수 있다. 이번 포스팅에서는 Table 구조 및 정보에 대한 조회 쿼리를 포함하여 다른 정보들..
작성일자 : 2023-11-10 Ver 0.1.1 1. Intro 쿼리를 작성시 WHERE절에서 다양한 방법을 통해 문자열 조회를 할 수 있다. 조회할 문자열에 대해 정확한 문자를 알거나 혹은 정확한 조건으로 제한할 경우에는 등호를 사용한다. SELECT * FROM SCOTT.EMP WHERE ENAME = 'CLARK' 복수개의 조건을 충족하는 경우에는 (NOT) IN 함수나 OR 조건을 이용할 수도 있다. -- (NOT) IN 함수 사용 SELECT * FROM SCOTT.EMP WHERE ENAME IN ('CLARK','BLAKE'); -- OR 함수 사용 SELECT * FROM SCOTT.EMP WHERE ENAME = 'CLARK' OR ENAME = 'BLAKE'; 만약 숫자 데이터가 문..
작성일자 : 2023-11-09 Ver 0.1.1 1. Intro 조회하는 쿼리의 행 건수에 대한 정보를 알고 싶을 때는 어떻게 해야할까? 나는 그동안 주로 COUNT(1)을 사용해왔다. COUNT(1) 외에도 조회 쿼리 행 건수를 알 수 있는 방법이 있는데, 그 방법은 바로 SUM(1)을 이용하는 것이다. 2. SUM(1) 과 COUNT(1) 앞서 언급한대로 SUM(1)과 COUNT(1)은 둘다 조회된 행의 건수를 집계할 때 사용한다. 그렇지만 이 둘간에 크다고 하면 클 수 있는 차이점이 하나가 있는데, 조회된 데이터가 없을때 OUTPUT이 다르다는 점이다. 이에 결과가 다르다는 것을 유의해야 하며 상황에 따라서 필요한 방식을 사용해야 한다. 아래 예제는 조회되는 행이 존재 할 때 COUNT(1)과 S..