반응형

DATABASE 18

[ORACLE] EQUI JOIN (동등 조인, 등가 조인)

EQUI JOIN (동등 조인, 등가 조인) 두 테이블에서 서로 공통적으로 존재하는 칼럼의 값이있는 행 전체를 연결하여 결과를 생성하는 조인 기법으로 =연산자를 사용하여 테이블간의 값을 연결시킨다. 일반적으로 PK와 그것을 참조하는 FK로 지정된 컬럼을 연결시킬때 많이 사용한다. SELECT 컬럼명1, 컬럼명2, 테이블2.컬럼명3 FROM 테이블1, 테이블2 WHERE 테이블1.컬럼명1 = 테이블2.컬럼명2 -- test 테이블과 apple 테이블, mouse테이블 있다고 가정할때 SELECT test.num, apple.name, age, address, color FROM test, apple, mouse WHERE test.num = apple.num AND test.user_id = mouse.u..

DATABASE/Oracle 2020.02.04

[ORACLE] 기본적인 내장함수

COUNT(*)와 COUNT(컬럼) COUNT(*)와 COUNT(1)은 동일한 기능을 하고 있다. 하지만 COUNT(컬럼)과는 약간의 차이점이 있다. COUNT(*)은 NULL값을 포함한 모든 행의 갯수를 나타낸다 COUNT(컬럼)은 NULL값은 제외한 행의 갯수를 나타낸다. SELECT COUNT(*) FROM EMP; -- 전체 사원수 기본적인 내장 함수 평균값을 나타내는 AVG(컬럼) SELECT AVG(age) FROM TEST; -- 평균나이 이때 평균나이가 소수점 이하로 떨어져 실수가 될 수 있는데 그럴때는 아래 코드처럼 하면된다. SELECT ROUND(AVG(age)) FROM TEST; -- 반올림 : ROUND() SELECT CEIL(AVG(age)) FROM TEST; -- 올림 :..

DATABASE/Oracle 2020.02.04

[ORACLE] 기본적인 테이블 생성하기

테이블 생성 데이터베이스를 사용하려면 가장 먼저 데이터를 담을 테이블을 생성해야 한다. CREATE TABLE 테이블명(컬럼명 데이터타입, 컬럼명 데이터타입.....); --예) CREATE TABLE test( id NUMBER(5) PRIMARY KEY, name VARCHAR(30), loc VARCHAR(30) ); -- 테이블 구조 확인 DESC 테이블명; 위와 같이 테이블 명과 컬럼, 그리고 컬럼의 데이터타입을 정해주고 제약조건이 있을시 적어준다. 이러한 작업을 하면 데이터를 담을 빈 테이블이 생성됐다. 하지만 데이터가 없는 테이블은 중요하지 않다. 중요한것은 테이블안에 있는 데이터들이다! 데이터를 테이블안에 넣어주어야 한다. 테이블의 값 추가하기 --전체 칼럼에 값을 넣을때 INSERT IN..

DATABASE/Oracle 2020.02.04

기본 LEFT JOIN

위 사진은 join에 대한것을 정리한 사진이다. 왼쪽 상단에 있는 그림이 가장 기본적인 LEFT JOIN이다. JOIN은 관계형 데이터베이스의 꽃이라고도 부를 수 있는데 그만큼 관계형 데이터베이스에서는 중요한 부분이다. 하나의 테이블의 모든 데이터를 다 적어놓는것도 좋지만 데이터를 파악하기도 어렵고 테이블에서 반복된 데이터를 수정해야할때 그 가짓수가 수천가지라면 수정하기가 굉장히 어려울 것이다. 이러한 이유로 테이블을 분리하여 사용한다. 하지만 테이블을 분리하면 데이터를 한 눈에 파악하기가 어렵고 다른 테이블에서 데이터를 찾아봐야하는 경우가 있는데 이럴때 두 테이블을 연결시켜줘 원하는 데이터를 한눈에 파악할 수 있게 해야한다. 이러한 경우에 JOIN을 사용한다. SELECT * FROM 테이블1 LEFT..

DATABASE/MySQL 2020.01.29

MySQL 기본적인 CRUD

Create 생성 테이블의 데이터를 추가하는것을 CREATE라고 한다. INSERT INTO 테이블이름 (칼럼이름1,칼럼이름2) VALUES('값내용','값내용') 칼럼이름과 내용의 순서가 같아야한다. column이름을 적고 values안에 값을 적어주면 된다. --예) INSERT INTO test (id,name) VALUES (1,'eatnows'); Read 읽기 데이터가 추가 되었는지 확인하려면 Read를 하면 되는데 그 방법은 아래와 같다 SELECT * FROM 테이블이름; : 테이블에 있는 모든 데이터들을 볼 수 있다. SELECT * FROM test;특정한 column이 가진 데이터만 보고싶으면 * 자리에 column이름을 적어주면 된다. (여..

DATABASE/MySQL 2020.01.29

MySQL 테이블 만들기

CREATE TABLE 이름( 컬럼이름1 datatype 제약조건, 컬럼이름2 datatype 제약조건; ); 테이블에는 column에 들어올 데이터타입을 정해줄 수 있다. 반드시 정해준 데이터타입에 맞는 데이터만 들어올 수 있는데, 그것을 datatype 자리에 넣어줄 수 있다. INT(m) : 정수 - (m)은 몇개까지 노출시킬 것인가. VARCHAR(n) : 가변적인 문자형 DATETIME : 날짜와 시간을 모두 표현하는 데이터타입 이외에 정말 많은 데이터타입을 적어 줄 수 있다. 제약조건은 공백이여선 안되고 반드시 값이 와야한다거나(NOT NULL : NULL이면 안된다) 하는 조건을 제시해줄 수 있다. 말로 설명해서 어려우니 예를 들어보자 CREATE TABLE test( id INT(10) N..

DATABASE/MySQL 2020.01.28

MySQL 기본 개념

MySQL은 오픈 소스 관계형 데이터베이스이며 관계형 데이터베이스이기 때문에 SQL문법을 사용하여 관리할 수 있다. 관계형 데이터베이스 관계형 데이터베이스란 키(key)와 값(value)들을 테이블(table)화 시킨 데이터베이스를 말한다. 우리가 흔히 엑셀에서 보던 행(row, record)과 열(column)으로 이루어진 표와 관계형 데이터베이스는 비슷하다. 보통 데이터베이스에서 column을 이야기하면 데이터 타입 혹은 구조 를 얘기하고 row를 이야기하면 데이터 그 자체를 말한다. 오늘날 많은 데이터베이스가 있지만 아직까지도 관계형 데이터베이스가 주를 이루고 있으며 대표적인 DBMS로는 아래와 같다. 오라클(Oracle) MySQL MS SQL 관계형 데이터베이스의 데이터를 관리하기 위해 SQL이..

DATABASE/MySQL 2020.01.28
반응형