본문 바로가기
반응형

SQL10

Oracle SQL(6) ✅세션 사용자가 오라클 데이터베이스에 접속을 하게 되면 세션이 생성됨 사용자가 데이터베이스를 접속 종료할 때 까지 계속 유지됨 각 세션에는 고유한 SID(Session identifier)와 SERIAL#(serial number)를 가지고 있음 시리얼 번호는 세션이 종료되어도 다른 세션이 동일한 SID를 갖고 시작했을 때 정확한 세션 객체에 적용될 수 있도록 보장해줌 ✅오라클 DB 사용자 계정 오라클 DB 사용자 계정생성 방법 1. 계정생성시 세션 변경해야함 alter session set "_ORACLE_SCRIPT" = true; 2. 테이블스페이스 생성 create tablespace [테이블스페이스이름] // 대부분 회사 이름으로 사용 datafile ['데이터파일경로'] size [초기사이즈].. 2023. 3. 6.
SQL 예제(3) JOIN 연습문제 문제1) 지역별로 수강신청 인원수, 지역을 조회하시오 select address, count(*) || '명' as cnt from (select a.hakno, address from (select hakno from tb_sugang group by hakno) a inner join tb_student b on a.hakno = b.hakno) group by address; 문제2) 과목별 수강 신청 인원수, 과목코드, 과목명를 조회하시오 select a.gcode, gname, concat(count(*), '명') as "인원수" from tb_sugang a inner join tb_gwamok b on a.gcode = b.gcode group by gname, a.gco.. 2023. 3. 3.
Oracle SQL(5) rownum 고정된 값이 아닌 select되는 값에 따라서 동적으로 부여되는 번호 위의 순서대로 진행됨 작동방식 where절이 실행될 때 조건에 맞으면 1을 부여하고, 맞지 않으면 번호를 부여하지않고 버림 select문이 실행되면서 번호가 부여됨 → 따라서 rownum은 where절이 실행될때 존재하는 컬럼이 아니므로 rownum=1 외에 숫자 지정은 할 수 없음 rownum을 이용해서 4번~6번 데이터 조회하기 select uname, hakno, address, rownum from tb_student where rnum between 4 and 6 order by uname; 위의 방식대로 데이터를 추출하면 아무런 값이 추출되지 않음 rownum은 고정된 값이 아닌 select되는 값에 따라서 동적.. 2023. 3. 3.
Oracle SQL(4) [참고] https://gent.tistory.com/376 JOIN 이너 조인 (INNER JOIN) 기준테이블의 조인컬럼, 조인테이블의 조인컬럼에 해당값이 모두 존재하는경우에만 데이터가 조회됨 예) → emp 테이블의 ename의 king의 경우 deptno의 값이 90인데 dept테이블에는 존재하지 않기때문에 조인하게되면 조회되지 않음 아우터 조인 (OUTER JOIN) 기준 테이블의 데이터를 누락 없이 모두 조회하고 참조 테이블의 값이 있을 경우 해당 값을 사용하기 위해서 아우터 조인을 사용함 LEFT/RIGHT/FULL OUTER JOIN 기준 테이블에만 데이터가 존재하면 조회됨 아우터 조인에서 LEFT, RIGHT는 기준 테이블을 지정하는 것이며, 아래의 쿼리에서 LEFT OUTER JOIN의.. 2023. 3. 2.
SQL 예제(2) [emp 테이블] 문 1) emp 사원테이블을 생성하시오 create table emp( empno number(4) primary key --사번(-9999~9999) ,ename varchar2(50) --이름 ,job varchar2(10) --직급 ,mgr number(4) --매니저정보 ,hiredate date --입사일 ,sal number(7,2) --급여(소수점 2자리) ,comm number(7,2) --커미션(보너스) ,deptno number(2) --부서코드(-99~99) ); 문 2) emp사원테이블에 행을 추가하시오 insert into emp(empno, ename, job, mgr, hiredate, sal, deptno) values(7369, '개나리', '사원', 79.. 2023. 2. 28.
Oracle SQL(3) 해석순서 GROUP BY [참고] https://extbrain.tistory.com/56 select [그룹컬럼], [집계함수] from [테이블명] group by [그룹컬럼]; SELECT type, COUNT(name) AS cnt FROM hero_collection GROUP BY type; --hero_collection 테이블에서 type 컬럼을 기준으로 그룹핑한 결과를 보여주는 쿼리 HAVING where절과 비슷한 조건절의 역할을 하지만 where 뒤로 와야하고 group by와 함께 사용해야함 집계함수를 사용하여 조건을 부여할 수 있음 select [그룹컬럼], [집계함수] from [테이블명] group by [그룹컬럼] having [조건절]; select addr, count(*.. 2023. 2. 27.
Oracle SQL(2) ✅Create sequence 자동으로 일련번호 부여 시퀀스 생성: CREAT SEQUENCE [시퀀스명]; 시퀀스 사용: [시퀀스명].nextval → value값에 입력 시퀀스 삭제: DELETE SEQUENCE [시퀀스명]; -- sungjuk 테이블에서 사용할 시퀀스 생성 create sequence sungjuk_seq; -- 시퀀스와 sysdate함수를 이용한 행 추가 insert into sungjuk(sno, uname, wdate) values(sungjuk_seq.nextval, '홍길동', sysdate); ✅Read 데이터 조회의 제한, 데이터 조회 방법 ⭐키워드 오는 순서 알고있기 SELECT [ALL | DISTINCT | DISTINCTROW ] [HIGH_PRIORITY] [.. 2023. 2. 23.
Oracle SQL(1) 1. 자료형 문자형 char, varchar char(n) 고정길이 문자 1바이트의 문자열이 할당 되더라도 10바이트 전부를 사용함 사용된 사이즈를 계산할 필요가 없어 속도는 빠르지만, 메모리 낭비가 심함 주민번호, 우편번호, 계좌번호 등 예) char(5) → ‘SKY ‘ varchar(n) 가변길이 문자 1바이트를 사용하면 나머지 9바이트는 재사용 가능함 사용된 사이즈를 계산해야 함으로 속도가 느리지만, 메모리 절약에 좋음 게시판 제목, 아이디, 비번, 이름 등 예) varchar(5) → ‘SKY’ 숫자형 int (정수형) 수업시간에 숫자 자료형을 int형으로만 사용해서 다른 자료형이 어떤것이 있는지 궁금해서 서칭한 결과, 오라클DB에는 'int' 라는 키워드의 자료형이 없다고 한다.(integer.. 2023. 2. 22.
Database 기초 1. 데이터베이스 여러 사람이 공유할 목적으로 체계화하여 통합, 관리하는 데이터의 집합 컴퓨터 언어로 제어가 가능 데이터 베이스의 개념은 사실 수학자가 만들어 낸 개념으로, 집합과 개념이 유사함 → 집합 : 순서를 고려하지 않은 유일한 원소들의 모임 데이터베이스의 정의 통합 데이터 : 최소의 중복과 통제 가능한 중복만 허용한 데이터 저장 데이터 : 컴퓨터가 접근할 수 있는 매체에 저장된 데이터 공유 데이터: 여러 사용자가 함께 소유하고 이용할 수 있는 공유 데이터 (사용 목적 다른 사용자들 전부 고려해 DB 구성해야함.) 운영 데이터: 조직의 주요 기능 수행 위해 지속적으로 꼭 필요한 데이터 데이터베이스 설치의 의미 데이터베이스 서버라는 프로그램을 설치한것 프로그램을 이용하여 데이터와 관련된 작업을 할 .. 2023. 2. 22.
반응형