String Function (문자열 함수) 문자열에 대한 함수들의 모음이다.. 대소문자 변환 upper(컬럼명) : 모든 영어를 대문자로 lower(컬럼명) : 모든 영어를 소문자로 initcap(컬럼명) : 맨 앞 영어 스펠링만 대문자로 substr () 문자열 추출 substr(컬럼명,시작위치,몇개의 글자를 가져올지) ex) tel 컬럼에 데이터 010-1234-5678 이 있을 때 substr(tel,5,9) 하게 되면 1234-5678이 출력 된다 length () 문자열 길이 자바 문자열 함수 length와 똑같이 길이를 반환한다. ex) Oracle 이라는 데이터가 들은 컬럼 a 검색시 length(a) 하면 6이 나온다 .. instr() 문자열 검색 java로 치면 indexof랑 똑같은..
numerical Function (숫자 함수) python math 함수에서 쓰이는 것들의 sql 버전 round() round(컬럼명,소수점 이하 자릿수) 반올림 할 때 사용한다. 앞에서 쓴 avg 함수 같은거 사용하면 평균치를 구하다보니 소수점 뒷자리가 길어져 테이블이 지저분해 질 때 round를 통해 테이블 정리가 가능하다. floor() , trunc() 내림 함수인데 floor는 정수 , trunc는 실수이다 (즉 소수점 아래를 다 버리거나 버리지 않거나..) floor(컬럼명) , trunc(컬럼명,소수점 이하 자릿수) ceil() 올림 함수이다 .. 내림과 반대로 자릿수 올려준다.. mod() ANSI-sql에선 %가 없고 mod를 통해 나머지 값을 반환한다. mod(값, 값을 나눌 숫자)..
Aggregation Function (집계 함수) 그냥 자바로 치면 count,sum,max,min,average 임.. SQL에선 count() , sum() , avg() , max(), min() 그냥 똑같음... count() 컬럼의 데이터 수를 세야 할 때 사용 (단 null은 카운트 하지 않음) select count(*) from tblInsa; 이렇게 모든 직원의 수를 구할 수 있다. 앞에 있었던 distinct와 섞어서 부서 종류가 몇개인지 구한다던지 활용 방법이 많아 자주 쓰인다. select count(case when buseo = '기획부' then 1 end) from tblinsa; 이렇게 부서에 몇명이 있는지 case 조건문을 통해 알아낼 수도 있다. 나머지는..
Order by (정렬) 컬럼 순서를 정렬할 때 사용함. select 컬럼 from 테이블 where 조건 order by 오름/내림차순; 일 때 제일 마지막에 동작함 (4번째) 테이블 지정 -> 조건에 맞는 데이터를 -> 컬럼에 맞춰 데이터를 가져옴-> 데이터 정렬 select * from tblinsa order by basicpay; 결과 order by 기준 컬럼; 만 해도 정렬이 됨 (기본 값이 오름차순이므로 생략해서 쓰면 오름차순이 됨) 내림차순을 하려면 order by basicpay desc; 를 해야 함 가나다순 , abc순, 숫자 크기 순은 이렇게 할 수 있지만 직위 같은 경우 가나다 순이 아닌 부장 -> 과장 -> 대리 -> 사원 순으로 가므로 가나다로 정렬이 어려우므로 case를 이..
Column (컬럼) 행렬로 치면 열에 해당하는 것을 뜻함 컬럼은 다양한 속성을 가진다. ex) 이름 직급 나이 연봉 OOO 대리 31 4000 이런식으로 이름 직급 나이 연봉에 해당하는 위치이다 . distinct 중복값을 제거해준다 기존 테이블의 값에서 select distinct buseo from tblinsa; 즉 부서 컬럼에 distinct를 사용하게 되면 이렇게 중복되는 값을 다 없애고 출력이 된다. case SQL에서 조건문 실행을 할 수 있는 방법 중 하나이다. case when then end 으로 구성이 되어 있으며 when 조건 then 반환값 의 형식이다. 앞의 테이블을 이용해서 사용하면 select name, case when substr(ssn,8,1) = 1 then '..
where where은 내가 보고자 하는 내용에 해당하는 조건을 걸 때 사용한다 조건에 부합하는 레코드만 추출되어 결과에 나오게 할 수 있다. 예시 -- 테이블 생성 CREATE TABLE tblcountry ( name VARCHAR2(30) NOT NULL PRIMARY KEY, -- 국가명 capital VARCHAR2(30) NULL, -- 수도 population NUMBER NULL, -- 인구수 continent VARCHAR2(2) NULL, -- 대륙(AS, NA, SA..) area NUMBER NULL -- 면적 ); INSERT INTO tblCountry VALUES ('대한민국','서울',4405,'AS',10); INSERT INTO ..