2024/07 27

Join

Join 이란 : 조인은 두 개 이상의 테이블에서 관련된 데이터를 함께 조회하기 위해 사용하는 SQL 기능 이다.관계형 데이터베이스에서 정규화된 데이터를 효과적으로 조회할 때 필수적이다.  Join의 기본 유형  1. inner join( 내부 조인 ) :두 테이블에서 조건이 일치하는 행만 반환합니다.가장 흔히 사용되는 조인 유형입니다.2.outer join( 외부 조인 )Outer left join ( 외부 왼쪽 조인 )왼쪽 테이블의 모든 행을 포함하고 오른쪽 테이블과 일치하는 행이 있으면 그 정보도 함께 가져옵니다.일치하는 행이 없으면 오른쪽 테이블 컬럼은 NULL로 표시됩니다.구문 :    select 컬럼명 from 테이블1별칭 outer left join 테이블2별칭   on 별칭.컬럼명 = 별..

Database/SQL 2024.07.09

transaction(트랜잭션)

transaction 1. 데이터 조작 결과 관리 :insert , update , delete 작업의 결과를 commit 으로 영구 저장하거나 rollback 으로 취소할 수 있다. 2. Savepoint 기능 :트랜잭션 내에서 savepoint를 사용해 중간 저장점을 만들 수 있다."savepoint 이름;" 으로 저장점을 생성"rollback to 이름;" 으로 특정 savepoint까지만 롤백할 수 있다. 3. Commit : 트랜잭션의 모든 변경사항을 데이터베이스에 영구적으로 저장한다.commit 후에는 변경사항을 취소할 수 없다. 4. Rollback :트랜잭션의 모든 변경사항을 취소하고 이전 상태로 되돌린다.savepoint가 없다면 트랜잭션 시작 지점으로 되돌아간다.

Database/SQL 2024.07.09

Sequence

Sequence Sequence는 Oracle 데이터베이스에서 유일한 숫자 값을 자동으로 생성하는 데이터베이스 객체이다.주로 기본키(Primary Key) 값을 자동으로 생성할때 사용됩니다.  Sequence의 주요 특징 : 자동 증가 : 지정된 증분 값에 따라 자동으로 증가합니다.유일성 보장 : 생성되는 값은 항상 유일합니다.동시성 지원 : 여러 세션에서 동시에 사용해도 안전합니다.사용자 정의 가능 : 시작 값, 증분 값, 최대 값 등을 설정할 수 있습니다. Sequence 생성 방법  create sequence 시퀀스이름( 1부터 시작 ) [start with 시작값 ] [increment by 증가치 ] [maxvalue 최대값 ] [minvalue 최소값 ] [cycle | nocycle ][c..

Database/SQL 2024.07.09

rownum

rownum rownum은 특정 조건에 따라 반환되는 결과 집합에서 각 행에 부여되는 가상의 번호이다.이를 통해 행의 순서를 식별하거나 제한하는 데 사용될 수 있다.주로 데이터 검색 결과를 제한하거나 순서를 매기는 데 활용된다. 주요 특징과 사용 방법가상의 행 번호 : ROWNUM은 데이터베이스에서 반환되는 각 행에 대해 순차적으로 부여되는 번호입니다. 결과 집합의 첫 번째 행부터 시작하여 1씩 증가합니다.제한 조건 :주로 데이터 조회 시 특정 행의 개수를 제한하는 데 사용된다. 예를 들어 처음 몇개의 행만을 반환하거나 특정 범위의행을 선택할 때 활용할 수 있다.select * from emp where rownum 정렬과 함께 사용 :일반적으로 정렬된 결과에서 특정 범위의 행을 선택할 때 사용된다. 이..

Database/SQL 2024.07.08

테이블 복사 / 레코드 복사

테이블 복사테이블 복사는 이미 생성된 테이블의 구조나 레코드와 열을 선택적으로 복사할 수 있는 기능 테이블 복사 장점 기존 테이블의 구조와 데이터를 한 번에 복제할 수 있어 효율적이다.원하는 열만 선택하여 데이터를 복사할 수 있다.테이블 복사 주의사항테이블 내의 인덱스 , 기본 키 , 외래 키 등의 제약 조건은 복사되지 않는다.대량의 데이터를 복사할 경우 성능 이슈가 발생할 수 있다. 테이블 복사 방법create table 테이블명 as 복사할테이블내용  - emp테이블의 모든컬럼과 모든 레코드 복사하기     CREATE TABLE c_emp AS SELECT * FROM EMP; - emp테이블의 특정컬럼을 복사하기(컬럼명이름 변경포함)    CREATE TABLE c_emp2 AS        SE..

Database/SQL 2024.07.08

뷰 ( View )

View 가상테이블 이다.실제 존재하지 않지만 실제 테이블과 똑같이 사용한다. (select , insert , delete , update 가능)뷰는 복잡한 쿼리를 단순화 시킬수 있다.복잡한 쿼리문을(조인 , 서브쿼리) 미리 뷰로 만들어 사용하면 간단하게 검색 가능(단, insert , delete , update 안됨)보안을 위해 사용한다.(관리자 유형에 따라 특정 컬럼 만 선택하여 보여줌)뷰는 사용자에게 필요한 정보만 접근하도록 접근을 제한할 수 있다. View 생성 방법create view 뷰이름 as 뷰 내용 View 수정 방법create or replace view 뷰이름 as 뷰 내용 View 삭제 방법drop view 뷰이름  View  예시 create or replace view v_s..

Database/SQL 2024.07.08

서브쿼리( Subquery )

서브쿼리란 ?다른 테이블의 값을 기준으로 한 테이블에서 데이터를 검색할 수 있도록 다른 쿼리 내부에 중첩된 쿼리즉 , 다른 쿼리 내부에 포함되어 있는 Select 문을 의미 한다. 서브쿼리의 특징메인 쿼리 안에서 또 다른 쿼리문이 있는 것반드시 서브쿼리를 괄호로 묶는다.쿼리의 Select , from , where , having 및 join 절 에서 사용한다.서브 쿼리는 결과가 한 개 이상 반환될때는 in , any , all 연산자를 사용한다.서브 쿼리는 결과가 한 개일 때는 비교연산자를 사용한다. 비교연산자=   : (Equal): 값이 동일한 경우 참입니다. >   : (Greater Than): 값이 비교 대상보다 큰 경우 참입니다.>= : (Greater Than or Equal To): 값이..

Database/SQL 2024.07.08