본문 바로가기

→ 프로그래밍.데이터베이스/DB,SQL14

SQL 숫자 관련 함수 모음 SQL 숫자 함수 ABS(NUMBER) 절대값을 출력한다. CEILING(NUMBER) 값보다 큰 정수 중 가장 작은 수를 출력한다. FLOOR(NUMBER) 값보다 작은 정수 중 가장 큰 수를 출력한다. ROUND(NUMBER, 자릿수) 숫자를 소수점 이하 자릿수에서 반올림한다. TRUNCATE(NUMBER, 자릿수) 숫자를 소수점 이하 자릿수에서 버린다. POW(X, Y) or POWER(X, Y) X의 Y승으로 나타낸다. MOD(분자, 분모) 분자를 분모로 나눈 나머지를 계산한다. GREATEST(NUMBER1, NUMBER2...) 주어진 수 중 제일 큰 수를 반환한다. LEAST(NUMBER1, NUMBER2......) 주어진 수 중 제일 작은 수를 반환한다. INTERVAL(NUMBER1, .. 2017. 3. 28.
[MySQL] 테이블 변경, 생성, 추가, 삭제 쿼리 " [MySQL] 테이블 변경, 생성, 추가, 삭제 " 오늘은 테이블 생성, 추가, 삭제등에 대해 간단히 포스팅하겠습니다.일하다가 생각이 안날때 항상 검색해서 사용 해 왔던거같아서 적어두려구요^^;;ㅋㅋ.. 1. 테이블 생성CREATE TABLE [테이블명](칼럼 타입);EX) CREATE TABLE USR_MST(ID VARCHAR(20)); 2. 칼럼 추가ALTER TABLE [테이블명] ADD [칼럼명][타입]EX) ALTER TABLE USR_MST ADD ID VARCHAR(20) NOT NULL DEFAULT '1'; - 저 타입 뒤에 있는 NOT NULL은 NULL값 허용 비허용을 설정해주는거에요. 저 예시처럼 DEFAULT값은 1로 설정해주면 값이 NULL일 경우 1로 설정이됩니다. 3. .. 2017. 2. 13.
오라클 조건함수 DECODE 함수, CASE WHEN 표현식 오늘은 오라클에서 조건함수로 많이 쓰이는 DECODE에 대해서 포스팅해드리겠습니다. 오라클 내장함수에는 우리가 자바에 C에서 쓰는 if문과 같은 기능을 하는 DECODE라는 함수가있습니다.즉 오라클에서의 조건문인거죠. JAVA에서 보면 IF문을 중첩해서 사용하는데 DECODE도 중첩해서 사용할 수 있어요. 먼저 기본 구분에 대해 알아볼게요. [ DECODE 기본구문 ] DECODE(기준값,조건1,결과1,결과2) - 기준값이 조건1이면 결과1, 아니면 결과2이렇게 해석할 수 있어요. 저기에서 결과2를 생략해 주셔도 되는데 생략할 경우에는 자동으로 NULL로 반환이되요. DECODE랑 비슷한 표현식이 CASE 표현식이 있어요. CASE문은 오라클 내장함수는 아니에요.근데 DECODE보다 표현할 수 있는 범위.. 2016. 11. 24.
[ORACLE] 오라클 함수(function) 만들기. 함수 생성 이번엔 오라클 함수를 직접 만드는 방법을 포스팅하려구해요~있는 함수들을 갖다 쓰기도하지만 원하는 함수가 없을때 직접 만들어 쓰고싶을때가 많더라구요. 오라클에서 함수란.- RETURN문을 이용해 원하는 값을 반환 하기 위해 만드는 것. 오라클 함수는 프로시저랑 비슷하지만 IN파라미터이용이 가능합니다. 밑엔 프로시저랑 함수의 차이점이니 참고해두세요! -프로시져 : 1.PL/SQL 문으로서 실행 2.RETURN Datatype이 없음 3.값을 Return할 수 있음 -함수 : 1.식의 일부로서 사용 2. RETURN Datatype이 필수 3.값을 Return하는 것이 필수 먼저 함수를 생성하기위해 기초적이 뼈대를 알아보겠습니다. CREATE OR REPLACE FUNCTION TEST_MINJI RETURN.. 2016. 11. 5.
[ORACLE] LPAD RPAD 함수 :: 문자길이 채우기 [ 오라클 LPAD RPAD 함수 ] 이번엔 오라클 함수 LPAD와 RPAD에 대해 포스팅을 하려고합니다. 오늘 일을 하다가 '0003'으로 저장을 한 후, 조회를 해보면 무조건 '3'으로 출력이되길래 테이블을 확인해보니 해당 컬럼 타입이 NUMBER 타입이더라구요ㅠㅠ.. NUMBER타입은 앞에 앞에 0을 입력해도 다 무시되서 '3'으로만 출력이되요ㅠ설계자분이 그 칼럼을 NUMBER로 설계해주셔서 내맘대로 테이블을 수정은 못하고...ㅠㅠ출력은 무조건 '0003'으로 되야한다고 해서 오라클 함수를 찾아봤어요.ㅋㅋㅋㅋㅋ 해당칼럼을 테이블에서 NUMBER가 아닌 VARCHAR형식으로 바꿔주면 해결될 문제지만 NUMBER 타입으로 가야한다면오라클 함수 LPAD와 RPAD를 활용해보세요!! 오라클 함수에는 많은 .. 2016. 11. 1.
오라클 DB INSERT와 UPDATE문을 한번에 하기 → MERGE INTO !! INSERT와 UPATE문을 한번에! [MERGE INTO 구문] 쿼리를 다루다 보면 데이터를 넣어야 하는 테이블에 값이 있으면 UPDATE 없으면 INSERT를 해야하는 경우가 많이 있습니다.보통 이런 쿼리를 짜게되면 SELECT 쿼리로 먼저 데이터 유무를 판단하고 서비스단에서 그 결과를 가지고 INSERT쿼리를 돌릴지 UPDATE쿼리를 돌릴지 분기 처리를 해왔습니다.그러다 선배가 제가 짠 쿼리를 MERGE INTO 구문으로 튜닝을 하라해서 막 찾아보다 알게된 MERGE INTO!! 찾아보니 첨엔 구문이 간단해서 좋을거 같으면서도 적용하려하니 버벅거렸던 기억이있어요ㅋㅋMERGE INTO 구문은 구조가 같은 두개의 테이블을 하나의 테이블로 합치기위한 작업을 위해 생긴 구문이며, 오라클에서만 사용이 가능합.. 2016. 9. 23.