본문 바로가기

Back-End/Database17

[SQL] 숫자 관련 기본 함수 1편 https://jinnnkcoding.tistory.com/81 [SQL] dual 테이블/ 기본 함수_1(날짜 관련 / 문자 관련) dual 테이블 오라클에서 자체적으로 제공해주는 테이블 간단하게 함수를 이용해서 계산, 결과값을 확인할 때 사용하는 테이블 오직 한 행, 한 컬럼 만을 담고 있는 테이블 사용 용 jinnnkcoding.tistory.com 숫자와 관련된 함수들 1) 절대값을 구하는 함수 : abs(정수) select abs(23) from dual; select abs(-23) from dual; 2) 양수(1), 음수(-1), 0을 반환해 주는 함수 : sign(정수) select sign(23) from dual; select sign(23), sign(-23), sign(0) .. 2021. 10. 5.
[SQL] dual 테이블/ 기본 함수_1(날짜 관련 / 문자 관련) dual 테이블 오라클에서 자체적으로 제공해주는 테이블 간단하게 함수를 이용해서 계산, 결과값을 확인할 때 사용하는 테이블 오직 한 행, 한 컬럼 만을 담고 있는 테이블 사용 용도 : 특정 테이블을 생성할 필요없이 함수 또는 계산을 하고자 할 때 사용됨 오라클에서 제공해주는 함수들 1. 날짜와 관련된 함수들 1) 현재 시스템의 날짜를 구해오는 함수 : sysdate -- 현재날짜, 어제날짜, 내일날짜 화면에 표시하기 select sysdate "현재 날짜", sysdate-1 "어제 날짜", sysdate+1 "내일 날짜" from dual; 2) 몇 개월 이후의 날짜를 구하는 함수 형식) add_months(현재날짜, 숫자(개월 수)) select add_months(sysdate,4) as "4개월 .. 2021. 10. 5.
[SQL] JOIN join ~ on 키워드 테이블과 테이블을 연결하여 특정한 데이터를 얻고자 할 때 사용하는 키워드 두 개 이상의 테이블에 정보가 나뉘어져 있을 때 사용함 보통, 중복해서 데이터가 저장되는 것을 막기 위해 테이블을 나누어서 쓰게 됨 emp 테이블에서 부서의 상세정보까지 저장을 한다면 10번 부서에 소속된 사원이 3명이므로 부서원과 근무지가 3번 중복되어 나타남 이렇게 중복되어 저장된 데이터는 추후 삽입, 수정, 삭제 시 이상 현상이 발생할 수 있게 됨 즉, 이러한 현상이 발생하지 않게 하려면(= 데이터가 중복되어 저장되지 않게 하려면) 데이터베이스에서 두 개 이상의 테이블에 정보를 나우어서 저장해 두어야 함. 하지만 이렇게 두개의 테이블로 나누게 되면 데이터의 중복은 발생하지 않지만 원하는 정보를 얻으려면.. 2021. 10. 5.
[SQL] 시퀀스(sequence) 시퀀스(sequence) 시퀀스란 자동으로 순차적으로 증가하는 순번을 반환하는 데이터베이스 객체 보통 PK값에 중복값을 방지하기위해 사용 가령, 메모장에 메모가 하나 추가될때마다 글번호(PK)가 생겨야 한다고 가정했을 때 만약 5번까지 메모 번호가 생성되어있다면 그 다음 글이 추가가 되었을 경우 글 번호가 6으로 하나의 ROW를 생성해주어야 할 것 이다. 이때 6이라는 숫자를 얻으려면 기존 글번호중 가장 큰 값에 +1을 하는 로직을 어딘가에 넣어야하는데 시퀀스를 사용하면 이러한 로직이 필요없이 데이터베이스에 ROW가 추가될때마다 자동으로 +1을 시켜주어 매우 편리하다, 형식) create sequence 시퀀스이름 start with n (시작번호 설정 - 기본적으로 기본값은 1) increment by.. 2021. 10. 5.
[SQL] 그룹함수 (avg, count , max, min, sum) 그룹함수 여러 행 또는 테이블 전체에 대하여 함수가 적용되어 하나의 결과값을 가져오는 함수 1) avg() : 평균값을 구해 주는 함수 2) count () : 행의 갯수를 구해주는 함수, null 값은 무시하고 행의 갯수를 구해줌 3) max() : 최대값을 구해주는 함수 4) min() : 최솟값을 구해주는 함수 5) sum() : 총합을 구해주는 함수 -- [문제] emp테이블에서 모든 SALESMAN의 급여 평균, 급여 최고액, -- 급여 최소액, 급여합계액을 화면에 보여주세요 select avg(sal) as "SALESMAN의 급여 평균", max(sal) as "SALESMAN의 급여 최고액", min(sal) as "SALESMAN의 급여 최소액", sum(sal) as "SALESMAN의.. 2021. 10. 4.
[SQL] order by / asc / desc / 오름차순,내림차순 정렬 order by 절 자료를 정렬하여 나타내고자 할 때 사용하는 구문 order by 절을 사용할 때에는 select 구문의 맨 마지막에 위치해야함 asc : 오름차순 정렬 desc : 내림차순 정렬 기본적으로 order by 절을 사용 시에는 오름차순이 default 임 오름차순으로 정렬할 경우에 asc는 생략 가능 null은 오름차순에서는 제일 나중에, 내림차순에서는 제일 먼저 나옴 -- emp 테이블에서 사번을 기준으로 오름차순으로 정렬하여 화면에 보여주세요 select * from emp order by empno asc; select * from emp order by empno;-- 오름차순은 asc 생략 가능 -- [문제] products 테이블에서 배송비를 기준으로 내림차순 정렬하여 모든정보.. 2021. 10. 4.