본문 바로가기

SQL

(6)
1231 주키는 문자열로 잘 안잡음 문자열을 비교하는 것보다 숫자를 비교하는게 더 빠름 관리적인 차원에서 1. 요소찾기 - 학번, 이름, 주소, 입학연도, 등과 같은 것 2. 중복제거 3. 그룹화 N개가 항상 FK 한글명칭은 권장사항아님 관계는 테이블을 FK를 검 제약조건의 삭제시 조건 작업 없음(RESTRICT) [기본값] - 자식테이블에 해당 데이터가 존재하면 부모테이블의 해당데이터는 삭제안됨 종속 삭제(CASCADE) - 부모테이블의 해당데이터 삭제시 관계된 모든 데이터가 삭제됨 널 설정(SET NULL) - 부모테이블의 해당 데이터 삭제시 자식테이블에 해당 데이터를 널로 변경 로컬이 지금 다루는 내 테이블, 참조될 열이 가져올 테이블 주키가 아닌데 중복제거하고싶으면 새 고유 제약조건 선택 부모데이터가 존재..
12 24 union - 중복된 ROW는 제거하고 합침 union all - 중복 상관 없이 합침 세로로 데이터를 붙힘 조인은 오른쪽으로 늘어나는 거 문법 select문 union select문 위결과랑 아래꺼랑 합치겠다 열 가 동일하지 않으면 못 합침 조건 : 위와 아래의 실행결과 컬럼의 개수와 타입이 동일해야됨 명칭은 위의 것 기준으로 동작 셀렉트 여러개 붙힐 수 있음 유니온은 데이터를 어떻게 붙힐건가 기준 컬럼명 대소문자 구분 X 언더바로 단어구별 데이터유형 NUMBER - 숫자 VARCHAR2 - 문자 크기 지정해줘야댐 - 크기제한 : 4000BYTE DATE - 날짜 오라클은 VARCHAR2 그 외 VARCHAR 위의 공간 모자르면 ↓ BLOB - 4GB CLOB - 32GB? DDL - CREAT, AL..
21-12-20 서브쿼리와 JOIN 서브쿼리 - 쿼리안의 쿼리 데이터 재가공 (view를 재가공) select - 단일 컬럼 단일 로우인 뷰 from - 한 칸짜리부터 한 줄짜리 복수컬럼 복수로우 등등 가능 where - 기본적으로는 단일 컬럼, 단일로우인 뷰 단, in은 사용 시 단일 column, 복수 row 가능 효율이 가장 좋은건 from > select > where from - 처음에 한번만 불러올 때 돌음 select - where에서 걸러낸 row수 만큼 돌음 where - 조건만큼 돌음 JOIN - 데이터를 붙여준다. FROM절에서만 사용가능 A INRER JOIN B ON 조건 - 조건이 TRUE인 데이터만 존재 A LEFT OUTER JOIN B ON 조건 - 조건이 TRUE인 데이터 + 왼쪽의 데이터 중 일치하지 않는..
211216 - 순차함수와 집계함수 집계함수 - 데이터를 수집하여 유의한 결과로 변경한 것 집계함수를 쓰면 별도로 다른 컬럼을 가져올 수 없음 정확히는 WHERE 필터링 이후에 가공됨 count(값) - 개수 sum(값) - 합계 avg(값) - 평균 max(값) - 최대값 min(값) - 최소값 기본적으로 select에서 쓰임 --COUNT(값) : 값이 존재하는 ROW 개수를 센다. *의 경우 모든 컬럼이 포함된다. --NULL은 세지않음 SELECT COUNT(COMM) FROM EMP ; --SUM(값) - 값의 합계를 구함. 값으로는 숫자만 올 수 있음 SELECT SUM(SAL + NVL(COMM,0)) FROM EMP ; --AVG(값) : 값의 평균을 구함. 값으로는 숫자만 올 수 있음 SELECT AVG(COMM) FROM..
2021-12-14 [명령어 정리] --ROUND(값, 자리수) : 값을 소수점 해당 자리수까지 반올림 --FLOOR(값) : 값의 소수점을 버림처리 --TRUNC(값, 자리수) : 값을 소수점 해당 자리수까지 버림 --CELL(값) : 값의 소수점을 올림처리 --MOD (값1, 값2) : 값1을 값2로 나눈 나머지 --ABS(값) : 값의 절대값 SELECT ROUND(3.1415,1), FLOOR(3.1415), TRUNC(3.1415,2), CEIL(3.1415), MOD(5,2), ABS(-7) FROM DUAL; --DBMS_RANDOM.RANDOM : 2의 31승 이상 ~ 2의 -31승 미만의 정수 생성 --DBMS_RANDOM.VALUE(값1, 값2) : 값1 이상 값2 미만의 범위에서 난수생성 --DBMS_RANDOM.STR..
20211213[DBMS, 호스트명, SELECT ,FROM ,WHERE ,ORDER BY] Data => 수치화가능한 기록된 내용 데이터베이스 > 스키마 > 테이블 > 데이터 데이터베이스를 관리하기 위해선 DBMS가 필요 DBMS (DataBaseManagement System) - (Ansi - DB기반)Oracle, MySQL - MariaDB, SQLite3, MS-SQL, ..~ No - SQL => SQL구문을 사용하지 않음 통계부분에서는 Ansi - DB기반 DBMS보다는 기능이 떨어짐 NO-SQL과 Ansi-DB기반 중간의 FireBase 등이 있다. 오라클에서 새접속을 누르면 아래와같은 창이 뜬다. NAME - 우리가 알아보기 쉬운 것으로 편하게 지정 비밀번호 : 1234 SYS - 계정명 SYSDBA - 관리자권한으로 접속하겠다 호스트명 : 도메인 or ip 인터넷에 공유기를 ..