====== SQL ======
* NULL은 비교할 수 없음
A = { 1,2, NULL } WHERE A < > 2
일 때 A는 1만 나옴 → nvl 함수 쓰자
* A번째 에서 B번만큼 (중간의 몇개만 select)
LIMIT a offset b
* WITH문
WITH ALIAS명_1 AS ( SUB쿼리 ), ALIAS명_2 AS ( SUB쿼리 ) SELECT 컬럼명 FROM ALIAS명~~~
* like 를 in 처럼
SELECT S1.주소, S2.시군구 FROM 고객리스트 S1
LEFT OUTER JOIN (SELECT 시군구 FROM 주소) S2
ON (S1.주소 LIKE '%'||S2.시군구||'%')
[[data_analysis:SQL:interview]]
==== window function ====
window function - Frame phrase
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=theswice&logNo=221320203566
range와 rows 차이
==== 계층형 질의 ====
https://heodolf.tistory.com/72
조직도 등 (직원id - 상사id) 구조로 되어 있는경우
* Ansi : With 재귀적 방법
* ORACLE : CONNECT BY
==== Impala ====
* unixtime 형태의 string -> 시간으로
* FROM_UNIXTIME(BIGINT unixtime [, STRING pattern])
from_unixtime(cast(A.time as BIGINT), "yyyy-MM-dd HH:mm:ss")
* [[data_analysis:sql:impala_performance]]
==== HIVE ====
* INSERT INTO vs. INSERT OVERWRITE
* row 더하기 vs. 덮어쓰기
* partition 문과 함께
* https://sparkbyexamples.com/apache-hive/hive-insert-into-vs-insert-overwrite/
* https://wikidocs.net/23562#insert
===== Examples =====
{{page>data_analysis:sql:z-score&link&nouser&nodate&noeditbutton}}
{{page>data_analysis:sql:median&link&nouser&nodate&noeditbutton}}
{{tag>data_analysis SQL}}
~~DISCUSSION~~