112서버 접속하기

 

전체 테이블 조회 하기

SELECT * FROM TABS;

 

숫자함수

 

함수명 의미 사용예
ROUND([숫자],[몇자리]) 주어진 숫자를 반올림 한후 출력함 ROUND(12.345,2) ->12.35
CEIL([숫자]) 올림 CEIL(12.345) -> 13
FLOOR([숫자]) 내림 FLOOR(12.345)->12
MOD([숫자],[나눌숫자]) 나머지 MOD(12,10) ->2
POWER([숫자],[몇제곱?]) 제곱 POWER(3,2)-> 9
TRUNC([숫자],[몇자리]) 소수점 정해서 버리기 TRUNC(12.345,2) -> 12.34

 

 

SELECT
ROUND(12.345,2),
CEIL(12.345),
FLOOR(12.345),
(CEIL(12.345*100)/100),
(FLOOR(12.345*100))/100,
TRUNC(12.345,2),
MOD(12,10),
POWER(2,8)
FROM DUAL

 

 

IF? 만약에 소수점 두자리까지 올림 또는 버림을 한다고 하면

SELECT
(CEIL(12.345*100)/100),
(FLOOR(12.345*100))/100
FROM DUAL

 

 

 

오라클 임시 테이블 조회

SELECT * 
FROM DUAL

 

 

MAPE 통계 공식이 있다. =>  정확도를 확인할 수 있다.

Mean Absolute Percentage Error   5

1-ABS(FCST-ACTUAL) /FCST

 

 

날짜함수

함수명 의미 사용예
SYSDATE 시스템 현재 날짜/시간 2024/04/03 오전 9:49:40
NEXT_DAY 다음으로 돌아오는 요일
1(일),2(월)...7(토)
오라클에서만 사용한다.
LAST_DAY 속한 달의 마지막 날짜

 

TIMESTAMP//SYSDATE

 

데이터 조회하기

릴레이션은 행과 열이 있는 데이터이다.

 

EXPRESSION (KOPO 같은거)

SELECT 'KOPO' AS MEASUREID, 
        A.*
FROM KOPO_PRODUCT_VOLUME2 A

 

DISTINCT

:중복된값 제거하기

SELECT
	DISTINCT {컬럼명}
FROM {테이블명}

 

KOPO_PRODCUT_VOLUME 테이블에서 ST0002상품의 201515,201516 년도 제품을 조회

SELECT A.*
FROM KOPO_PRODUCT_VOLUME A
WHERE PRODUCTGROUP = 'ST0002'
AND (YEARWEEK = '201515' OR YEARWEEK = '201516')

 

 

산술연산자

MAP_PRICE :원가

IR :할인 가격

PMAP : 할인된가격

SELECT * 
FROM KOPO_PROMOTION

 

할인율 구하기

SELECT CONCAT(ROUND(((IR/MAP_PRICE)* 100),2),'%') AS SALES_PERCENT ,
       CONCAT((ROUND(IR/MAP_PRICE,2)*100),'%') AS SALES_PERCENT2
FROM KOPO_PROMOTION

 

서브쿼리

SELECT B.*
FROM(
    SELECT A.*                    
    FROM KOPO_CHANNEL_RESULT A             =>테이블로 생각하면 된다.
    WHERE 1=1
    AND AP1NAME != 'WEST'
)B
WHERE 1=1
AND B.AP1NAME='WEST'

 

 

SQL쿼리는 최대한 긍정적으로 하는게 나중에 생각하는게 편하다.

 

중요!!!!IN

SELECT A.*
FROM KOPO_CHANNEL_RESULT A
WHERE 1=1
AND SALESNAME = 'COSTCO'
AND PRODUCTGROUP IN('WM','TV')

 

자주 쓰이는 IN방식

SELECT A.*
FROM KOPO_CHANNEL_RESULT A
WHERE 1=1
AND SALESNAME = 'COSTCO'
AND PRODUCTGROUP IN (SELECT TARGETNAME
					FROM RECALL_PRODUCT)

 

 

 

NOT IN

:포함하지 않고 있다.

 

LIKE

SELECT A.*
FROM KOPO_CHANNEL_RESULT A
WHERE 1=1
AND SALESNAME LIKE 'BEST%'

 

SELECT COUNT(*)
FROM(
    SELECT *
    FROM TABS
    WHERE 1=1
    AND TABLE_NAME LIKE '%KOPO%';
)B

 

 

EDIT TABLE ?? 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함