개발 공부 127

SUBQUERY / DDL/ DML

위치에 따라 Subquery : WHERE절 subquery의 결과를 조건에 활용하는 방식으로 사용. WHERE 필드명 IN (SUBQUERY) InlineVies : FROM절 ScalarQuery : SELECT 실행결과 행수에 따라 단일행 서브쿼리 : 메인쿼리와 일반비교연산 ( =, >, =, WHERE (department_id, salary) IN (SELECT department_id, MAX(salary) 쌍을 맞춰줘야함. SELECT department_id, employee_id, first_name, salary FROM employees WHERE (NVL(department_id, 0), salary) IN (SELECT NVL(department_id, 0), MAX(salary)..

개발 공부/SQL 2023.06.16

SQL 오답

1. 급여가 10000 이상인 사원의 사번, 부서번호, 이름, 급여, 수당을 출력하시오.단, 부서번호가 30 번,60 번, 90 번인 부서는 제외하고 사원을 검색한다--15건 SELECT employee_id 사번, department_id 부서번호, first_name 이름, salary 급여, commission_pct 수당 FROM employees WHERE salary>10000 AND NOT(department_id=30 OR department_id=60 OR department_id=90); salary>=10000 AND department_id NOT IN (30, 60, 90); 2.급여가 4000 보다 많은 사원들의 부서별 급여평균를 출력하시오. 단 급여평균은 소숫점이하 2 자리에서..

GROUP BY / HAVING/ JOIN/ UNION

GROUP BY 처리 순서 중요 FROM -> WHERE-> GROUP BY-> HAVING GROUP BY절에서 사용한 컬럼만 SELECT절에서 여러행 함수와 함께 사용 가능 일반 조건 : WHERE 그룹 조건 : HAVING 급여가 5000이상인 사원의 부서별 사번, 급여, 부서번호를 출력하시오 SELECT employee_id, salary, department_id FROM employees WHERE salary >= 5000; 급여가 5000이상인 사원의 부서별 부서번호, 총급여를 출력하시오 SELECT department_id, SUM( salary ) FROM employees WHERE salary >= 5000 GROUP BY department_id; 급여가 5000이상인 사원의 부서..

개발 공부/SQL 2023.06.15

SQL 함수

내장 함수 단일행 함수 : 행 별로 처리되는 함수 숫자형 함수 : MOD ( ) 나머지 값을 구해주는 함수, NULL 함수 : NVL( ) 문자형 함수 : LENGTH( ) 날짜형 함수 : MONTHS_BETWEEN( ), SYSDATE 형변환 함수 : TO_CHAR( ) 숫자를 문자로 ※ 숫자 지정 형식 지정 형식 설명 예 결과 9 9로 출력 자릿수 지정 TO_CHAR(salary, '99999999') 24000 0 자릿수만큼 0을 출력 TO_CHAR(salary, '09999999') 00024000 $ 달러 기호 TO_CHAR(salary, '$9999999') $24,000 L 지역 화폐 기호(원) TO_CHAR(salary, 'L9999999') \24,000 . 명시한 위치에 소수점 TO_C..

개발 공부/SQL 2023.06.14

SQL Developer : SELECT

SQL (Structured Query Languge) 종류 SELECT : 조회 DML (데이터조작어) : 추가(INSERT), 수정(UPDATE), 삭제(DELETE) DDL (데이터정의어) : 객체생성(CREATE)/ 객체구조변경(ALTER)/ 객체제거(DROP) DTL (데이터트랜잭션) : 트랜잭션 완료(COMMIT)/ 복구(ROLLBACK) DCL (데이터제어) : 계정생성(CREATE USER), 변경(ALTER USER), 제거(DROP USER)/ 권한부여 (GRANT),취소(REVOKE) 쿼리(Query)란 무엇인가? 쿼리(Query)란 쉽게 이야기해서 데이터베이스에 정보를 요청하는 것 쿼리(Query)를 바로 번역을 하면 '질의'라고 해석이 됨.즉, 질의를 보내고 결과를 얻는 것입니다...

개발 공부/SQL 2023.06.13

데이터 베이스 기본 개념

데이터베이스란? 데이터들을 구조적으로 통합해둔 곳. 여러 사용자가 공유하고 접근할 수 있도록 구조화된 데이터의 집합 DBMS로 관리되는 데이터 묶음 DBMS (DataBase Management System)란? 응용 프로그램이 데이터베이스를 사용 할 수 있게끔 관리해주는 소프트웨어 시스템 ( DB프로그램이라고 생각하면 됨) - 파일시스템이랑 비슷하지만 파일시스템은 데이터 중복, 일관성 오류 등이 있음 종류 : MySQL, Oracle, DB2 등 SQL : 데이터에 접근할 수 있는 표준 언어 계정이 있고, 대표 계정이 System. 네트워크를 통해 socket을 만들어야 함. 라이브러리 (JDBC Driver) : 자바 개발자들이 쉽게 오라클에 접속 할 수 있도록 도와줌. SQLPLUS: 소켓 생성 후..

개발 공부/SQL 2023.06.12

thread

thread : ,프로그램 내에서 실행되는 프로그램 제 흐름. 프로세스 내에 thread가 두 개라면 두 개의 코드 실행흐름이 생긴다는 것을 의미. multi Thread: 각자의 thread들이 하나의 독립된 프로그램처럼 동시 다발적으로 각자의 일을 수행함. 프로세스를 10개만드는것 보다 한 프로세스 안에 10개의 Thread를 만드는 것이 좋다. 어느 thread가 cpu를 먼저 점유할 지 모름. java -cp ThreadTest 1. 클래스로딩 2. 바이트코드검증 3. 0,1 재해석 4. static 변수 자동초기화 5. main-T 생성,시작 6. main -T에의한 main( ) 호출 run()가 끝나면 thread는 더 이상 효과가 없다. 동기화 (잠금장치) :lock걸어주는 작업 : syn..

개발 공부/JAVA 2023.06.09

입출력 (InputStream/Reader), file 라이브러리

InputStream (System.in) Reader : 파일을 읽기위함 ObjectInputStream ObjectOutputStream 출력stream 모니터 PrintStream ps = System.out; PrintStream oos = s.getOutptStream( ); 소켓 OutputStream oos = s.getOutptStream( ); 직렬화 : ObjectOutputStream / ObjectInputStream 직렬화 할때 클래스와 역직렬화 할때 클래스의 내용이 다르면 안 된다. 반드시 같아야 한다. 파일의 크기를 알고 싶을때 File f = new File("a.txt")) f.length(); canWirte() canRead() file 라이브러리 import java...

개발 공부/JAVA 2023.06.08

JCF (Java Collection Framework) 자료구조형 라이브러리 활용

JCF (Jave Collection Framework) ULM표기법 Interface상위로 class가 올 수는 없다. Collection(interface) / Map(interface) list(interface)에서 상속받는 vector(class)와 arraylist(class) 관계 : 점선 상속 표기를 할때 화살촉을 닫아줘야함. collection framework : 크기 조절 가능 collection : 값(value)만 저장 add() : 추가 size() : 저장된 자료의 갯수만 반환 remove(): 자료 삭제 List : 배열처럼 인덱스가 제공됨. 중복 데이터 저장 가능. 순차적으로 저장 가능 - list.get(0); - list.remove(0); . get () ArrayLi..

개발 공부/JAVA 2023.06.01

java 예외

오류 -컴파일 오류 -실행 오류 (에러/ 예외) 에러: 개발자가 처리할 수 없는 오류 예외: 개발자가 처리할 수 있는 오류 (경미한 오류), 처리 안하면 프로그램이 종료됨 예외종류 1) Runtime Exception : 컴파일러가 예외 처리를 감지하지 못하는 예외(UncheckedException) NumberFormatException, ArithmeticException, NullPointerException, ArrayIndexOutOfBoundsException.... 2) 그외의 Exception : 컴파일러가 예외 처리를 감지하는 예외 예외처리법 1. try - catch 메서드 내에서 예외 처리를 할때 try{ //예외발생 가능한 코드 위에 사 }catch( ) { } 2.throws 호출..

개발 공부/JAVA 2023.05.31