DATA BASE (48) 썸네일형 리스트형 20200409 JOIN 서브쿼리 집합연산 join 테이블 두개, 세개를 하나로 합치는 것 눈에 보이지 않는 그걸 view라고 한다. stack 구조 가장 안에 있는 서브쿼리 가장 안에 있는 함수를 먼저 해서 순서대로 상관 서브쿼리 같은 테이블 끼리 붙이는데 한 테이블의 다른 컬럼 별칭 줘야한다. 집합연산 Exists 랑 in이랑 비교해서 알자 차이점을 EXISTS 한 리코드에서 (상관쿼리랑 같이 잘 쓴다.) 단항연산 앞에 컬럼 안붙음. IN을 쓸 수 있는것은 EXISTS를 쓸 수 있음. 집합연산(MINUS..) JOIN --1.5 박지성이 구매한 도서의 출판사 수 SELECT COUNT(DISTINCT PUBLISHER) FROM BOOK B, customer C, ORDERS O WHERE O.CUSTID = C.CUSTID AND O.BOO.. 20200408 오후 User = 계정 = DB 새 DB 생성 DDL grant (리소스할 수 있는 )권한 주는 거 revoke 권한 회수하는 거 다 객체 - 트리거 시퀀스 인덱스 등등 좁은 의미의 스키마 : 테이블의 컬럼 resource - 테이블 , 뷰, 트리거 , 인덱스 등등과 같은 객체들을 가리키는 스키마(넓은 의미의 스키마) 테이블 = relation system 먼저 마당을 만들어 주고 리소스와 커넥션 권한을 만들어 준다. conn 아이디/비번; conn : 오라클 자체 명령어 - 접속을 이동함(계정을 갈아 탐), 생성된 아이디와 패스워드를 사용하여 접속하는 명령어 (ex) 관리자로 접속하여 테이블 생성 conn이하부터 마당으로 접속을 바꾸어 줌. 테이블 마다 프라이머리 키 하나 주는거는 무결성 어쩌구 데이터를 I.. Scalar 서브쿼리 SELECT 에 (SELECT~) 는 들고 있는 것이 서브쿼리 셀렉트 절에 셀렉트 + 듀얼있음 / 셀렉트 절에 셀렉트 + 조인 있음 DRIVEN TABLE이 PK를 들고 있는게 좋아요. 데이터가 적은게 좋아요. 캐싱 : 이미 한번 파싱한거는 기억하고 있다. 쿼리를 캐싱하고 있어서 다시 파싱하지 않아요. 쿼리문이 똑같으면 파싱 X : 캐싱 남아있음 1. driving table은 무조건 full scan 2. driven table 들고 있는게 아니면 스칼라 사용 금지 3. driven table의 내용이 커질 것이 예상이 된다면 스칼라 서브쿼리 쓰지말기! (얘 쓰지말고 outer join하기, driven table의 내용이 적을 때, 내용이 많아질 가능성이 없을 때 사용하기 좋음. (ex)DEPTNO .. INDEX https://blog.naver.com/codingspecialist/221196549870 오라클 데이터 검색기법에 대한 이해 세상에 모든 사물에 인터넷이 연결된다. blog.naver.com 데이터 딕셔너리 1 파싱 (컴파일이랑 비슷 - 명령어를 기계어로) 2 딕셔너리 -I/O 연산 너무 많이 하는 수고 덜기 위해서 미리 있는지 묻기 같은 쿼리 어떻게 하면 하드디스크에 접근(io)하지않고 메모리에 접근해서 방법 3가지 무조건 제일 좋은 1등 방법 ! 1. 캐시 메모리 검색 기법 캐시메모리(CPU에 붙어있는 저장장치) 2. 시퀀셜 엑세스 기법 (풀스캔 하는 것) 3. 랜덤 엑세스 기법 (INDEX-다이렉트로 접근) 1. 캐시 메모리 검색 기법 최근것에 우선순위 2. 시퀀셜 엑세스 기법 (풀스캔 하는 .. 서브쿼리 DML(INSERT, UPDATE, DELECT, UPDATE JOIN) INSERT 모든 컬럼에 데이터를 넣을 경우 테이블 이름 뒤에 컬럼 이름 생략이 가능하다 특정 컬럼에 값을 입력하기 dept2 테이블에 새로운 행이 잘 들어갔는지 확인하기 위해 보면은 날짜 데이터 입력하기 날짜 형태 맞춰서 입력하는것이 중요! alter session set nls_date_format='rrrr=mm=dd:hh24:mi:ss'; 날짜 타입에 맞춰서 입력 위의 데이터가 잘들어갔는지 확인하기 위해서 음수 값 입력하기 T_MINUS TABLE 하나 만들어서 거기에 음수 값 입력해보자 테이블 생성할 때 NO1은 자릿수를 지정하지않음 NO2는 자릿수를 정수부 자릿수로 3자리를 지정하였고 NO3은 소수점이하 자릿수까지 지정ㅇ 입력 값이 T_MINUS 테이블에 잘 들어 갔는지 확인 빨간색 1.1 이.. 관리자 비번 계속 틀려서 잠겼을 때 푸는 법 그럼 이제 다시 ORACLE SQL DEVELOPER로 가서 관리자 비번 차분히 정확히 해보세요! VIEW 은닉화할때 테이블을 복제해서 안보여주고 싶은부분 지우고 트리거(동기화)해서 주는 것보다 VEIW가 좋아요 VEIW로 하면 보여줄 컬럼(은닉화)만 보여줄 수 있고 자동으로 동기화 됨 트리거 : 테이블에 어떤 이벤트가 발생했능 때 자동으로 사용자가 정의 한 PLSQL명령을 실행 할수 있는 구문이다. (여기서 이벤트는 아래 CRUD) CRUD INSERT CREAT SELECT INSERT UPDATE UPDATE DELECT DELECT 중에서 선택해서 권한 줄 수도 있음. SELECT * FROM student; 테이블 잘라서 복제하기 CREATE TABLE student2 AS SELECT studno, name, id, grade, height, weight, deptno1, deptno2, profn.. 이전 1 2 3 4 5 6 다음