분류 전체보기
[Database] 데이터 집계 - HAVING
WHERE 절에서는 집계합수를 사용하지 못한다. 따라서 집계함수를 사용할 때 조건 비교를 하기 위해서 HAVING을 쓰게 된다. 그렇기에 HAVING의 경우 GROUP BY절과 함께 사용된다. 다음은 HAVING절을 이용한 SQL예시와 설명이다. Q) 승하차 인원 합계가 15000 ~ 16000사이 인 시간대와 역은? My Solution & Answer My Solution SELECT station_name, boarding_time, gubun, MAX(passenger_number) max_value, MIN(passenger_number) min_value, SUM(passenger_number) sum_value FROM subway_statistics GROUP BY station_name,..
[Database] 데이터 집계 - GROUP BY
GROUP BY 절 GROUP BY절은 WHERE 절과 ORDER BY 절 사이에 위치해 집계할 대상 컬럼이나 표현식을 명시해주면 된다 SELECT station_name FROM subway_statistics WHERE gubun='승차' GROUP BY station_name ORDER BY station_name; 해설) subway statistics이라는 테이블로 부터 gubun이라는 컬럼이 승차인 애들을 station_name이라는 컬럼을 기준으로 묶어서 집계해봐라. 그렇게 묶인 데이터를 station_name을 기준으로 오름차순 정렬해서 보여줘라 집계 함수 함수 의미 COUNT(expr) expr의 전체 개수를 반환한다. MAX(expr) expr의 최댓값을 반환한다. MIN(expr) e..
[DataBase] SQL 연산자와 함수
SQL연산 연산자란 피연산자를 대상으로 특정 연산을 수행 후 결과를 반환하는 역할을 한다. SQL 연산자는 기본적인 계산기와 같은 연산자를 가진다. +, - , *, / 가 그 예시이다. 하지만 특별하게 ||를 지원한다. 이는 두 문자열을 결합하여 그 결과를 반환하게 되는 연산자이다. SELECT 'A' || 'B' FROM dual; dual은 오라클 sql에서 사용할 수 있는 임시 테이블이다. 연산 결과를 보고자할 때 사용한다. 주요 SQL 함수 1. 숫자형 함수 ABS, CEIL, EXP, FLOOR, LN, LOG, MOD, POWER, ROUND, SIGN, SORT, TRUNC 등이 존재한다. 그 중에 ROUND가 헷갈려서 따로 설명을 적어보자면 ROUND(n, i) : n의 소수점 기준 ( ..
[Database] 데이터 조회, SELECT 문
SELECT 문의 기본 구문 SELECT문은 SELECT, FROM, WHERE, ORDER BY절 이렇게 4 부분으로 나눌 수 있다. SELECT 절. 테이블에서 선택할 컬럼이나 표현식을 명시하는 부분 표현식 : 값, 연산자, SQL 함수가 결합된 식을 말한다. FROM 절 FROM 절에서 조회하고자 하는 테이블을 명시한다. WHERE 절 특정 조건에 맞는 데이터를 가져오고자 할 때 사용한다. 생략하면 조건 없이 전체를 가져오는 것을 의미한다. ORDER BY 절 조회한 데이터를 정렬해서 보여주는 역할을 한다. 생략할 때는 무작위로 데이터를 보여준다. 조건에 맞는 데이터 조회하기 조건 연산자 조건 연산자 기능 = 두 값이 같을 때 참 ! = , 두 값이 다를 때 참 >
[Database] 데이터 입력과 삭제
데이터 입력, INSERT 문 INSERT INTO 테이블 명 ( column 1, column 2, column 3, ...) VALUES ( 값 1, 값 2, 값 3 ...) 필요 인자 테이블 명 컬럼 이름 데이터 실제 넣는 데이터가 문자열인 경우 ‘문자’ 를 사용해서 입력한다. 날짜의 경우 ‘날짜’로 입력한다. 데이터 삭제, DELETE문 DELETE [FROM] 테이블 명 WHERE 조건 필요 인자 삭제할 대상이 있는 테이블 삭제할 대상의 조건 → from은 생략이 가능하다. 가독성 때문에 존재하는 듯 하다. 본 글은 '누구나 쉽게 SQL'이라는 책을 읽고 정리한 내용입니다. http://www.yes24.com/Product/Goods/74311553 누구나 쉽게 SQL - YES24 설명은 쉽..
[Database] SQL 입문 - 2
테이블 생성 테이블 생성 구문 CREATE TABLE table_name( column_name1 datatype [NOT] NULL, column_name2 datatype [NOT] NULL, ... PRIMARY KEY ( column_list) ); 테이블의 이름과 컬럼 네이밍에 대한 제약사항은 다음과 같습니다. 30byte를 넘지 않습니다. _, 문자, 숫자 를 사용할 수 있다. 이름의 첫 문자는 반드시 문자로 시작한다. 컬럼의 데이터 형 테이터 유형 데이터 형 설명 문자형 CHAR(n) 고정길이 문자열 VARCHAR(n) 가변길이 문자열 숫자형 NUMBER(p, [s]) 날짜형 DATE ※ 숫자형 NUMBER(precision, scale) precision : 소수점을 포함한 전체 자릿수를 ..
[Database] SQL 입문 - 1
SQL이란? SQL은 RDBMS와 소통하는 프로그래밍 언어 SQL은 조건에 맞는 데이터를 한번에 처리하기 때문에 집합적언어라고 한다. SQL의 종류 DDL(Data Definition Language) :데이터 베이스, 테이블의 스키마를 생성하고 삭제하고 수정하는 데 사용하는 SQ CREATE : 생성 DROP : 삭제 ALTER : 테이블의 컬럼을 추가하거나 삭제, 속성을 변경해 줄 수 있습니다. TRUNCATE : 테이블 전체 삭제 RENAME :테이블 이름 변경 DML(Data Manipulation Language) : 테이블의 데이터를 조작하는 SQL SELECT : 테이블이나 뷰에서 데이터를 조회한다. INSERT : 데이터를 입력한다. UPDATE : 기존에 저장된 데이터를 수정한다. DEL..
[Database] 관계형 데이터 베이스란
관계형 데이터 베이스란? 관계형 데이터 베이스 개념과 특징 관계형 데이터 베이스 2차원 구조에 데이터 성격에 맞게 분리해 가급적 중복되지 않게 저장하고 필요한 데이터는 테이블 간에 관계를 맺어 추출하는 것을 의미 테이블 RDBMS가 데이터를 저장하는 구조는 2차원 테이블 이름 성별 나이 주소 felix 남 26 ... ... .. .. ... 컬럼(열) : 데이터의 속성을 의미한다. → 추후의 변경이 어려움 로우(행) : 컬럼 데이터로 이루어진 하나의 묶음 RDBMS vs NoSQL RDBMS 데이터 구조가 명확하며 변경 될 여지가 없으며 명확한 스키마를 사용하는 것이 중요한 경우 사용한다. 또한 관계를 맺고있는 데이터가 자주 변경될 때 사용하기 용이하다. 장점 스키마에 따라 데이터를 저장하여야 하므로 ..