교육 (Today I Learned)/Hanaro 74

[Hanaro] 43일차 / SQL (SELECT문, 연산자)

SQL로 데이터베이스 다루기 01 RDBMS 이해 데이터 (Data) 관찰, 측정, 연구, 분석 등을 통하여 수집된 정보 데이터의 형태 정형 데이터 (Structured Data) 미리 정해진 형식과 구조에 따라 저장된 데이터 데이터 검색, 삽입, 수정, 삭제 연산 손쉽게 가능 주로 정형화된 업무나 서비스에 사용 엑셀의 스프레드 시트, 관계형 데이터베이스 테이블 반정형 데이터 (Semi-Structured Data) 구조화되어 있지 않아 연산 불가 데이터 내부의 데이터 구조에 대한 메타 정보를 함께 제공하는 파일 형식의 데이터 HTML, XML, JSON, 웹 로그, 센서 데이터 등 비정형 데이터 (Unstructured Data) 정해진 구조나 규칙이 없고 연산에 사용할 수 없는 형태의 데이터 소셜 데..

[Hanaro] 46일차 / SQL (JOIN, 서브쿼리)

05 조인 이해 및 실습 조인 (Join) 두 개의 테이블을 연결하여 데이터를 검색하는 방법 서로 다른 테이블에 저장된 관련된 데이터를 가져와서 하나의 결과로 표시 (하나의 테이블) ANSI SQL 조인 방식 FROM 절에서 두 테이블명 사이에 조인 종류에 따라 CROSS, INNER, OUTER 중 선택하고 JOIN 키워드 같이 입력 조인에 대한 조건은 ON절에 저장하고 나머지 조건은 WHERE절에 작성 CROSS, INNER, OUTER 키워드는 생략도 가능 형태 SELECT * FROM 테이블A [CROSS|INNER|OUTER] JOIN 테이블B ON 조인조건 WHERE 기타조건; Non-ANSI SQL 조인 방식 FROM절에 테이블을 쉼표로 구분하여 작성 조인조건과 기타조건을 구분하지 않고 모두..

[Hanaro] 45일차 / SQL (집계 함수)

04 집계 함수 이해 및 실습 집계 함수 레코드의 개수, 합계, 평균, 최대값, 최소값 등을 구할 때 사용 SELECT 문에 사용한다. 집계 함수 종류 COUNT(* | 컬럼) 레코드 개수 SUM(컬럼 | 수식) 합계 AVG(컬럼 | 수식) 평균 MAX(컬럼 | 수식) 최대값 MIN(컬럼 | 수식) 최소값 STDDEV(컬럼 | 수식) 표준편차 WHERE 절 WHERE 절에 조건식을 넣어서 해당 조건에 맞는 레코드 출력 GROUP BY 절 그룹별로 묶어서 요약시 사용 SELECT 절에 그룹으로 묶을 컬럼명과 집계 함수를 넣은 후, 집계 함수를 제외한 컬럼명과 수식들은 반드시 GROUP BY 절에도 넣어야 한다. HAVING 절 GROUP BY의 결과에 대하여 추가 조건을 넣을 때 사용

[Hanaro] 44일차 / SQL (단일행 함수)

03 단일행 함수 이해 및 실습 문자형 함수 CHAR_LENGTH(문자열) 문자의 개수 반환 LENGTH(문자열) 문자열에 할당된 바이트 수 반환 CONCAT(문자열들) 문자열들 연결 CONCAT_WS(구분자, 문자열들) 구분자와 함께 문자열 연결 LEFT(문자열, 길이)/RIGHT(문자열, 길이) 문자열의 왼쪽/오른쪽부터 길이만큼 문자열 반환 SUBSTR(문자열, 시작위치, 길이) 지정한 위치부터 길이만큼 문자열 반환 SUBSTRING_INDEX(문자열, 구분자, 인덱스) 지정한 구분자를 기준으로 문자열 분리 후 가져오는 함수 SQL은 인덱스가 1부터 시작한다. LPAD(문자열, 길이, 채울문자열)/RPAD(문자열, 길이, 채울문자열) 지정한 길이에서 문자열을 제외한 빈칸을 특정 문자열로 채울 때 사용..

[Hanaro] 42일차 / Java (Collection, JDBC, 기본 SQL문, DB연결)

09 자료구조, Collection API 실습 Collection framework Collection 사전적 의미로는 요소(객체)를 수집해 저장하는 것 Collection framework 객체들을 효율적으로 추가, 삭제, 검색할 수 있도록 제공되는 컬렉션 라이브러리 java util 패키지 포함 인터페이스를 통하여 정형화된 방법으로 다양한 컬렉션 클래스 이용 컬렉션 프레임워크의 주요 인터페이스 List 순서를 유지하고 저장 (인덱스로 관리) 중복 저장 가능 종류 ArrayList List 변수명 = new ArrayList(); 형태 저장 용량을 초과한 객체들이 들어와도 자동적으로 늘어난다. 객체 제거시 자동으로 앞으로 1씩 당겨진다. 저장 용량 고정도 가능 LinkedList List 변수명 = ..

[Hanaro] 41일차 / Java (API Method, Exception, Thread, I/O)

06 OOP 이해 및 실습 - OOP 심화 학습 익명 객체 (Anonymous Object) 일회성 메소드 재정의시 사용 한번 쓰고 버릴 코드이기 때문에 굳이 이름을 붙여서 사용하지 않는다. 예시 interface NormalCar { void run(); } public class ex49_anonymousFunction { public static void main(String[] args) { // 일회성 익명 인터페이스 구현 객체를 선언/생성한다. NormalCar normalCar = new NormalCar() { @Override public void run() { System.out.println("슈퍼카가 달린다."); } }; normalCar.run(); } } 중첩 클래스 (Nest..

[Hanaro] 40일차 / Java (생성자, abstract, interface)

05 OOP 이해 및 실습 - OOP 기본 학습 생성자 함수 (Constructor) 클래스 객체가 생성될 때(new로 인스턴스 생성하면) 자동으로 호출되는 메소드 public 클래스이름() { … } 형태 매개변수 없이도 만들 수 있고 오버로딩으로 매개변수를 넣어서 만들 수 있다. 호출 시에 매개변수를 주어서 초기화 가능 부모 클래스에 기본 생성자가 있을 때 자식 인스턴스 생성 시, 자동으로 부모 클래스 기본 생성자가 먼저 호출된다. static 키워드 new 인스턴스 객체 생성 없이 바로 메서드나 변수를 사용 가능하도록 하는 키워드 함수나 변수 제일 앞에 static을 붙여주면 사용 가능 staitc 함수 안에서는 this를 사용할 수 없다. 메인에서 사용 시 클래스이름.static함수나 변수이름 형..

[Hanaro] 39일차 / Java (Array, Class, method, 접근 제어자, 싱글톤 패턴)

04 Java의 기본 문법 이해 - 제어문과 배열 1차원 배열 배열의 특징 동일한 자료형만 묶어서 저장 가능 생성 시 크기를 지정, 이후 크기는 변경 불가 배열의 선언 자료형[] 변수명; ← (해당 방식을 많이 사용!) ex) int[] a; 자료형 변수명; ex) int a[]; 배열의 객체 생성 객체 생성 시 개수가 지정되어야 함. 힙(Heap) 메모리에 생성 선언과 동시에 객체 생성 가능 ex) int[] a = new int[3]; 배열 객체의 값 대입 및 읽기 값 대입 참조변수명[인덱스] = 값; ex) a[0] = 1; 값 읽기 참조변수명[인덱스] ex) sout(a[0]); ⇒ 1 출력 배열의 생성과 동시에 값 대입 자료형[] 참조변수명 = new 자료형[]{값, 값, …, 값}ㅣ ex) i..

[Hanaro] 38일차 / Java (제어문)

04 Java의 기본 문법 이해 - 제어문과 배열 제어문의 개념 프로그램 실행 순서 제어 모든 제어문은 중괄호({})를 가진다. 만약 중괄호 안의 실행문이 1개인 경우 생략 가능 (컴파일러가 자동 삽입) 제어문 종류 if, switch, for, while, do-while 제어 키워드 종류 break, continue 조건문 (선택 제어문) 조건식에는 비교/논리 연산자가 들어간다. if 문 if문의 4가지 패턴 단일 if문 if(조건식) { 실행내용 } if else문 if(조건식) { true일 때 실행내용 } else { false일 때 실행내용 } if else if문 if(조건식) { 실행내용 } else if (조건식) { 실행내용 } else { 실행내용 } 중첩 if문 if 문 안에 if ..

[Hanaro] 37일차 / Java (연산자, Scanner)

03 Java의 기본 문법 이해 - 자료형과 연산자 연산자의 종류 산술 연산자 +, -, *, /, % 증감 연산자 데이터 값의 1 증가 및 감소 ++, — a = a+1; → a+=1; → a++; 다 같은 형태 전위형 (++변수명) 연산 전 증감 수행 후위형 (변수명++) 연산 후 증감 수행 비트 연산자 비트 AND, OR, NOT, XOR &, |, ~, ^ shift 연산자 비트 단위의 이동 참고: 최상위 비트가 0이면 양수, 1이면 음수 >>, > 비교 연산자 , ≥, >≥ 삼항 연산자 참인 경우 x, 거짓인 경우 y (참 또는 거짓) ? x : y Scanner 클래스 console 창에서 사용자에게 입력을 받을 수 있다. 사용 import java.util.Scanner; Scanner sc..

728x90