목록분류 전체보기 (72)
Everyday Essential
실습준비실행크롬 → F12 → Console 탭에서 코드 입력/실행또는 HTML에 태그로 작성기본 규칙변수는 let/const를 사용하고 var는 레거시로 간주한다.값이 변하지 않으면 const, 변할 수 있으면 let을 사용한다.alert/confirm/prompt는 데모나 내부 도구에서만 제한적으로 사용한다.1.1 자바스크립트의 역사원문Javascript는 1995년에 Brendan Eich가 발명. ECMA가 1997에 표준화ECMA5, 6가 주로 사용됨.(최신 버젼은 ECMA9)업데이트/정정표기는 ECMAScript(ES)가 정확하다. ES2015(=ES6) 이후 매년 릴리스되며, 현재는 ES2024까지 공개되었다.설명자바스크립트는 웹의 표준 언어이며, 브라우저와 서버(Node.js) 모두에서 ..
HTML5 & CSS3 기초 개념1. 웹의 기본 개념1.1 웹의 작동 방식웹은 클라이언트(브라우저)와 서버 간의 요청과 응답으로 작동한다. 사용자가 URL을 입력하면 브라우저는 해당 서버에 요청을 보내고, 서버는 HTML, CSS, JavaScript 등의 파일을 응답으로 전송한다.1.2 웹 표준과 브라우저웹 표준은 W3C와 WHATWG에서 정의한 웹 기술 표준이다. 모든 브라우저(Chrome, Firefox, Safari, Edge 등)는 이 표준을 각자의 방식으로 구현한다. 브라우저 간 렌더링 차이가 있을 수 있어 크로스 브라우저 호환성을 고려해야 한다.2. HTML 기초2.1 HTML 문서 기본 구조 안녕하세요! 이것은 내 첫 HTML 문서다.: HTML5 문서 선언: 루트 요소, lan..

PART 01 + PART 02 자료구조와 리스트내가 궁금해했던 점과 해결 과정자료구조랑 리스트를 공부하면서 처음에는 배열이랑 연결 리스트가 뭐가 다른지 잘 몰랐다.배열도 데이터를 쭉 저장하고 연결 리스트도 데이터를 쭉 저장하는데왜 굳이 두 가지 방법이 필요한지 궁금했다. 특히 배열은 크기를 미리 정해야 한다는 점이 좀 불편해 보였다.예를 들어 직원 명단을 배열로 만들었는 나중에 신입이 새로 오면 배열 크기를다시 만들어야 한다는 게 신기했다. 반면에 연결 리스트는 중간에 데이터를 넣거나 빼기가 쉽다고 해서이게 무슨 차이인지 직접 그림을 그려보면서 이해하려고 했다. 처음에는 연결 리스트에서데이터를 찾으려면 맨 앞에서부터 하나씩 따라가야 한다는 게 좀 답답하게 느껴졌다.배열은 arr[3]처럼 바로 찾을 수 ..
실행계획 해석의 중요성실행계획은 SQL 튜닝의 시작점이라고 생각한다.SQLEXPLAIN PLAN FORSELECT * FROM 주문 o, 고객 cWHERE o.고객ID = c.고객IDAND o.주문일자 >= '2025-01-01';SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);실행계획 해석 시 주의점실행 순서는 들여쓰기 순으로 아래에서 위로비용이 가장 큰 부분 먼저 확인예상 행 수(Cardinality)와 실제 행 수 비교통계 정보의 중요성옵티마이저는 통계 정보를 기반으로 결정한다.SQL-- 통계 정보 수집ANALYZE TABLE 주문 COMPUTE STATISTICS;-- 또는EXEC DBMS_STATS.GATHER_TABLE_STATS('스키마명', '주문');-- 컬럼 히스..
5장. 소트 튜닝5.1 소트 연산에 대한 이해5.1.1 소트 수행 과정소트는 많은 자원을 사용하는 작업이다.소트 실행 과정PGA의 SORT_AREA_SIZE만큼 메모리 할당메모리에서 정렬 시도메모리 부족 시 디스크 사용 (TEMP 테이블스페이스)정렬된 데이터 결과 반환SQL-- 소트 발생 쿼리SELECT 직원ID, 이름, 급여FROM 직원ORDER BY 급여 DESC;-- 처리 과정1. 직원 테이블 데이터 읽기2. PGA 메모리에서 급여 기준 정렬3. 정렬 결과 반환5.1.2 소트 오퍼레이션주요 소트 유형:SORT ORDER BYORDER BY 절로 인한 정렬SORT GROUP BYGROUP BY 절로 인한 정렬SORT UNIQUEDISTINCT, UNION 등으로 인한 중복 제거 정렬SORT JOIN소..
4장. 조인 튜닝4.1 NL 조인4.1.1 기본 메커니즘Nested Loop Join은 중첩 반복문과 같은 방식으로 동작한다.textfor each row in 첫 번째 테이블(Driving Table) { for each matching row in 두 번째 테이블(Inner Table) { 결과에 추가 }}SQL-- 주문과 고객 테이블 조인SELECT o.주문번호, o.주문일자, c.고객명FROM 주문 o, 고객 cWHERE o.고객ID = c.고객ID AND o.주문일자 >= '2025-01-01';처리 과정:1. 주문 테이블에서 2025-01-01 이후 주문 검색2. 각 주문에 대해 고객 테이블에서 해당 고객ID 검색3. 결과 조합4.1.2 NL 조인 실행계획 제어SQL-..