본문 바로가기

전체 글161

Do it! 오라클로 배우는 데이터베이스 입문 p.240 4번 문제 리뷰 자체 조인, 외부 조인을 알아야 풀 수 있는 문제 SQL> SELECT D.DEPTNO, D.DNAME, E.EMPNO, E.ENAME, E.MGR, E.SAL, E.DEPTNO, 2 S.LOSAL, S.HISAL, S.GRADE, E2.EMPNO AS MGR_EMPNO, E2.ENAME AS MGR_ENAME 3 FROM EMP E, DEPT D, SALGRADE S, EMP E2 4 WHERE E.DEPTNO(+) = D.DEPTNO 5 AND E.SAL BETWEEN S.LOSAL(+) AND S.HISAL(+) 6 AND E.MGR = E2.EMPNO(+) 7 ORDER BY D.DEPTNO, E.EMPNO; DEPTNO DNAME EMPNO ENAME MGR SAL DEPTNO LOSAL HIS.. 2022. 11. 5.
2022-11-04 조인, 서브쿼리 Join - 관계형 데이터베이스에서 원하는 결과를 여러 테이블로부터 가져오고 싶은 경우 즉, 여러 테이블을 이용해서 원하는 결과를 만들어내는 것을 조인이라 한다. - 조인은 어떤 테이블을 기준으로 다른 테이블에 있는 레코드의 값을 참조하는 것을 조인이라 한다. - 기본키 테이블과 외래키 테이블 관계를 이용해서 조인해야 한다. ------------------ ----------------- ㄴ어떤 정보를 ㄴ기본키테이블에 정리된 중복없이 정리 컬럼의 값을 참조해서 해둔 테이블 사용하는 테이블 조인방법 - 반드시 연관성있는 테이블끼리 조인해야 한다. - 조인조건을 정의해야 한다. - where 기본키테이블명.컬럼명 = 외래키테이블명. 컬럼명 (테이블 이름. 열이름) => where emp.DEPTNO = d.. 2022. 11. 4.
2022-11-03 오라클(Oracle) 단일행함수, 다중행함수 Oracle - 내장함수의 종류 1. 단일행 함수 : 데이터가 한 행씩 입력되고 입력된한 행당 결과가 하나씩 나오는 함수 2. 다중행 함수 : 여러 행이 입력되어 하나의 행으로 결과가 반환되는 함수 단일행함수 [ 문자 함수 ] - select upper(문자열) : 모두 대문자로 변환 - select lower(문자열) : 모두 소문자로 변환 - select inicap(문자열) :첫 글자는 대문자, 나머지는 소문자로 변환 - where length(문자열) - select substr(문자열 데이터, 시작 위치, 추출 길이) : 시작 위치부터 길이만큼 - select substr(문자열 데이터, 시작 위치) : 시작위치부터 끝까지 ** 오라클의 인덱스 번호는 1번부터이다. ** 기본값 - 1 - sel.. 2022. 11. 3.
2022-11-02 오라클(Oracle) SELECT문, WHERE절 Oracle SELECT : 데이터베이스에 보관되어 있는 데이터를 조회하는 데 사용한다. SELECT [조회할 열 1 이름], [열2 이름], .... [열N이름] from [조회할 테이블 이름]; - 원하는 것만 조회 => 콤마(,)로 구분하기 + 세미콜론(;) 붙이지 않음 1)한 칸 띄우고 별칭 지정 select sal*12 연봉 2) 큰따옴표(" ")로 묶어 지정 select sal*12 "연 봉" 내림차순정렬 - order by SAL asc, ENAME desc -> 오름차순, 내림차순 동시에 사용하기 ** order by는 맨 아래에 쓰기 WHERE - where절 : 특정 조건을 기준으로 원하는 행을 출력한다. - 조건 식의 개수 : select * from emp where 조건식1 and.. 2022. 11. 3.
2022-11-01 오라클(Oracle) 계정생성, 권한 부여하기, 비밀번호 변경하기 Oracle * 접속명령어 : conn * 사이즈 조절 명령어 : set linesize nnn; * XE, Listener 파일은 필수적으로 실행 중이어야 함(시작 - 윈도우 관리도구 - 서비스) => (listener.ora, transnames.ora 파일 내용 변경하면 재시작해주기 ) * commit; => 저장하기(인서트 딜리트 했던 데이터는 저장되지 않음) 1. 계정 생성하기 - ID : scott - PW : tiger - 계정을 생성하거나 권한을 부여하는 모든 작업은 관리자 계정에서 작업 - 로그인하다 오류나면 어느 계정에도 들어와있지 않은 것임 => 관리자 계정 접속하기 SQL> create user scott identified by tiger 2. 접속하기 - 접속권한을 부여하지 않고.. 2022. 11. 1.
2022-10-31 greedy알고리즘, 재귀알고리즘 2022. 11. 1.
2022-10-28 정렬 알고리즘 - 버블 정렬, 단순 삽입 정렬, API, greedy 알고리즘 - 정렬 알고리즘 for( 1번 for문 ) { for( 2번 for문 ) { } } * 1번 for문 : 탐색배열. 배열[]의 길이만큼 * 2번 for문 : 비교할 대상 [버블 정렬] : 이웃한 두 요소의 대소관계를 비교하고 필요에 따라 교환을 반복하는 알고리즘 package sort; public class BubbleSortTest { public static void main(String[] args) { int[] arr = {42, 32, 24, 60, 40}; for (int i = 0; i < arr.length-1; i++) { for (int j = 0; j < arr.length-1-i; j++) { //하나씩 빠져야 하기 때문에 -i System.out.println("i-"+i+".. 2022. 10. 29.
2022-10-27 컬렉션 프레임웍 - ArrayList, HashSet, HashMap 컬렉션 프레임웍 : 데이터 군을 저장하는 클래스들을 표준화한 설계 HashSet - Set인터페이스를 구련한 가장 대표적인 컬렉션 - Set인터페이스의 특징대로 HashSet은 중복된 요소를 저장하지 않는다(객체를 저장하기 전에 기존에 같은 객체가 있는지 확인함). - 새로운 요소 추가 => add, addAll 메소드 사용 => 중복된 요소 추가 시 false반환 package datastructure; import java.util.ArrayList; import java.util.HashSet; import java.util.Iterator; public class HashSetTest { public static void main(String[] args) { ArrayList list = new.. 2022. 10. 29.
2022-10-25 입출력 I/O 입출력 I/O 1. 스트림 - 데이터를 운반하는데 사용되는 연결통로이다. - 단방향 통신만 가능(하나의 스트림으로 입출력 동시에 처리 불가) - 입력스트림(InputStream)과 출력스트림(OutputStream) 필요함 2. 바이트기반 스트림 (1byte) : InputStream, OutputStream - byte단위 입력을 위한 클래스의 상위클래스인 InputStream - 키보드를 입력한 문자를 읽어서 리턴 - 1byte단위로 읽기 때문에 한글을 입력하면 깨짐(한글 - 2byte) package io; import java.io.IOException; import java.io.InputStream; import java.io.PrintStream; public class InputStream.. 2022. 10. 28.