일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 컴활1과목요약
- NCS 디지털
- 플라잉요가후기
- SAP
- 첫연말정산
- 한능검
- SAP SD
- IT상식
- ncs it
- 디지털 용어정리
- 정처기 약술형
- 사회초년생목돈
- 플라잉요가고통
- Python
- 알고리즘
- 금융IT
- 프로그래머스
- 디지털 IT 용어
- 장외파생상품
- 책리뷰
- 디지털 IT
- 코딩테스트
- 디지털 상식
- 네트워크관리사 2급 실기
- 사회초년생1억모으기
- 파이썬
- 연말정산처음
- 5년안에1억모으기
- 사회초년생목돈모으기
- 기술면접
- Today
- Total
목록▶ study (63)
공부기록장
select * from student where dept = '컴퓨터공학과' group by dept having professor = '박상원' order by name asc; 위와 같은 select문의 실행순서는, from -> where -> group by -> having -> select -> order by 이다. 단계별 상세 설명 1. from : 먼저 검색하고자 하는 테이블을 반환한다. (student 테이블 반환) 2. where : 테이블에서 원하는 조건들을 가진 행들을 반환한다. (student 테이블에서 학과가 '컴퓨터공학과'인 행들만 반환) 3. group by : dept로 행을 묶은 행이 반환된다. (묶여있는 컬럼 중 가장 위에 있는 행이 반환된다.) 4. having :..
0. 기본 테이블 세팅 select * from phone; select * from fruit; 1. IN select * from phone p where p.number in (select f.number from fruit f); 위와 같은 쿼리를 실행하면, 아래와 같은 결과가 나온다. 쿼리의 접근 순서를 살펴보자면, -> 괄호 안의 fruit 테이블에 먼저 접근한다. -> fruit 테이블에서 검색된 결과들을 리스트로 뽑는다. -> phone 테이블에 접근한다. -> phone 테이블과 뽑아진 리스트의 요소들이 일치하는지 하나씩 비교한다. 2. NOT IN select * from phone p where p.number not in (select f.number from fruit f); 위와..
SQL join에서 on에도 조건을 줄 수 있고, where절에도 조건을 줄 수 있다. 이때, 얼핏 보기엔 두 경우의 결과에 별 차이가 없어보인다. 하지만, on에서의 조건과 where절에서의 조건에는 약간의 차이가 있다. 이 차이를 명확히 짚고 넘어가부자. 코드로 보면 아래와 같다. 1) select * from student a, dept b where a.id = b.id and a.name = b.name and a.id = '1001'; 2) select * from student a join dept b on a.id = b.id and a.name = b.name and a.id ='1001'; 1) 쿼리같은 경우, 조인을 실행한 뒤 -> 조인결과로 생성된 테이블에서 id가 1001인 행들을..
UML(Unified Modeling Language)이란? 소프트웨어 시스템을 개발하는 과정에서 산출물의 명세화, 시각화, 문서화할 때 사용하는 모델링 언어로써 하나의 시스템을 표현하기 위한 표준적인 방법을 제공하기 위해서 만들어 졌다. UML Diagram의 종류 UMLDiagram은 크게 구조, 행위 두 가지 다이어그램으로 이루어져 있다. - 구조 다이어그램 Class Diagram(클래스 다이어그램) : 클래스의 속성, 함수, 변수타입들로 구성된 다이어그램. Object Diagram(객체 다이어그램) : 클래스의 인스턴스, 값이 매겨진 행동을 가지고 있는 독립된 객체정보를 표현하는 다이어그램. Package Diagram(패키지 다이어그램) : UML의 다양한 모델요소를 그룹화한 다이어그램. C..
제약조건이란? 제약조건은 간단히 말해 테이블에 여러 규칙을 적용해 놓는 것을 의미한다. 이런 제약 조건들을 통해서 테이블의 이상현상 방지와 효율적인 테이블 사용을 할 수 있다. NOT NULL 제약조건 create table Employees( id number(4), name varchar(25) not null, salary number(8,2), pct number(2,2), department_id number(4), hire_date date constraint emp_hire_date_nn not null); name, hire_date에 대한 not null 제약조건을 걸어준 코드이다. 여기서 두 컬럼의 차이점은 제약조건의 별칭의 유무이다. name은 지정해주지 않았고, hire_date는 ..
1. savepoint 의미 savepoint란 현재 작업 중인 transaction을 잘게 쪼개는 역할을 한다. savepoint를 저장해서 rollback to [savepoint] 라는 명령어를 통해 지정한 savepoint로 rollback명령을 수행할 수 있다. 아래 그림을 보면 더 잘 이해가 된다. 위의 사진처럼, insert까지의 명령을 전부 수행했다고 가정하자. 이때 rollback할 수 있는 방법이 3가지가 된다. 1. rollback to savepoint B 이 경우에는, 지정해줬던 savepoint B 시점으로 이동하여 B 시점 이후로 수행했던 작업들이 rollback된다. 2. rollback to savepoint A 이 경우에는, 지정해줬던 savepoint A 시점으로 이동하..
1. OFFSET 사용법 OFFSET을 사용하면, 원하는 행의 수 만큼을 건너뛰고 그 이후의 행부터 검색이 가능하다. select * from student; select * from student offset 2 rows; 2. fetch 사용법 원하는 행의 갯수만큼의 데이터를 출력하는 옵션이다. select * from student; select * from student fetch next 2 rows only;
1. ANY 주로 서브쿼리에서 사용하는 다중 행 연산자이다. 조건을 만족하는 값이 하나라도 있다면 결과를 리턴한다. select * from student where id = any('1001', '1002', '1003') --1001, 1002, 1003 중 하나라도 만족하는 id를 포함하는 전체 행을 출력 select * from student where id > any('1001', '1002', '1003') --1001, 1002, 1003 의 최소값 이상의 값을 포함하는 모든 행을 출력 select * from student where id < any('1001', '1002', '1003') --1001, 1002, 1003 의 최대값 이하의 값을 포함하는 모든 행을 출력 2. ALL 주로..
1. 조인의 의미 데이터베이스 테이블 간의 결합을 의미한다. 여러 곧에 흩어져 있는 데이터를 하나의 테이블로 보고 싶을 때 조인 연산을 사용한다. 조인을 할때에는 두개 이상의 테이블이 필요하며, 컬럼 값이 같은 기본키와 외래키가 일치하는 테이블이어야 조인이 연산이 가능하다. 2. LEFT OUTER JOIN 각 테이블의 중복되는 값과, A테이블에만 있는 값만을 가지고 온다. select * from A a left outer join B b on a.id = b.id; 3. RIGHT OUTER JOIN 각 테이블의 중복되는 값과, B테이블에만 있는 값만을 가지고 온다. select * from A a right outer join B b on a.id = b.id; --right outer join s..
1. 문제 ANIMAL_OUTS 테이블은 동물 보호소에서 입양 보낸 동물의 정보를 담은 테이블입니다. ANIMAL_OUTS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME는 각각 동물의 아이디, 생물 종, 입양일, 이름, 성별 및 중성화 여부를 나타냅니다. NAME TYPE NULLABLE ANIMAL_ID VARCHAR(N) FALSE ANIMAL_TYPE VARCHAR(N) FALSE DATETIME DATETIME FALSE NAME VARCHAR(N) TRUE SEX_UPON_OUTCOME VARCHAR(N) FALSE 보호소에서는 몇 시에 입양이 가장 활발하게 일어나는지 알아보려 합니다. 0시부터 23시까지, 각..