Cute Hello Kitty Kaoani

Database

Database/MongoDB

[MongoDB] MongoDB의 특징

테이블은 Collections, 데이터는 Document 테이블을 생성하지 않아도 데이터 insert 시 테이블이 존재하지 않는다면 자동으로 생성없는 필드를 insert 해도 생성몽고DB 쉘에서 데이터를 insert와 동시에 member 테이블을 만들어보자 member 테이블이 잘 생성된 것을 볼 수 있다.MongoDB의 특징여러 개의 테이블 구조를 배열 형태로 하나의 Collection으로 관리할 수 있다.고정된 스키마로부터 구애받지 않고 자유로운 문서지향 데이터베이스다양한 타입 지원 : String, Integer, Boolean, Arrays, Timestamp, Date, Object 여러 데이터 타입 지원읽기 쓰기 효율을 높이고 자동으로 장애 조치 및 확장이 용이여러 서버에 분산 저장 및 확장이..

Database/SQL

[MySQL] 데이터베이스 생성 / 사용자 계정 추가 / 권한 부여

MySQL Command Line Client 실행- MySQL 설치 시 입력했던 비밀번호를 입력하고 접속한다. 데이터베이스 생성 create database DB명 default character set utf8; 데이터베이스가 잘 생성되었는지 확인 show databases; 사용자 계정 추가 # 내부 접근을 허용하는 사용자 create user '사용자'@'localhost' identified by '비밀번호'; # 외부 접근을 허용하는 사용자 create user '사용자'@'%' identified by '비밀번호'; # 특정 ip만 접근을 허용하는 사용자 create user '사용자'@'000.000.000.000' identified by '비밀번호'; 권한 부여 # 모든 데이터베이스의 ..

Database/MongoDB

[MongoDB] 몽고DB와 자바 연동

① 자바 프로젝트 생성 (maven기반) File > New > Maven Project > create a Simple Project ② 드라이버 설정 pom.xml에 mongodb 의존성을 추가한다. 4.0.0 com.exam MongoDBTest 0.0.1-SNAPSHOT org.mongodb mongodb-driver-sync 4.8.2 org.apache.maven.plugins maven-compiler-plugin 3.8.0 1.8 1.8 조회 find package com.exam; public class SelectTest { public static void main(String[] args) { // ① 몽고DB 에 연결 mongodb://localhost:27017 MongoClie..

Database/MongoDB

[MongoDB] Aggregation Pipelines (집계 파이프라인)

aggregate pipelines 집계 파이프라인 기능을 사용하면 stream내의 document에 다양한 기능들을 지원할 수 있다 그룹핑 가능 컬럼 연산 기능 및 새로운 컬럼에 저장 컬럼에 별칭 지정 필터링 기능 및 정렬 db.collection.aggregate([{ stage }, ...]) 💡 stage 표현식 : $project, $match, $sort, $group $project 열 단위로 검색(projection) 하거나 별칭을 지정할 수 있다. 기존 key값을 사용할 때는 $key를 사용한다 # username 과 age 만 보기 db.user.aggregate({$project:{username:1, age:1}}) # 별칭 age ➜ userage , _id ➜ num db.use..

Database/MongoDB

[MongoDB] 몽고DB의 문서(document) 저장, 수정, 삭제

문서(document) 저장 _id 속성을 명시하지 않으면 자동으로 생성된다. 💡 _id는 pk 역할 Insert Methods — MongoDB Manual Docs Home → MongoDB Manual MongoDB provides the following methods for inserting documents into a collection:The following methods can also add new documents to a collection:See the individual reference pages for the methods for more information and examp www.mongodb.com 단일 문서 저장 db.collection.insertOne(문서) #..

Database/MongoDB

[MongoDB] 몽고DB의 조회(find)

배열 query 배열을 조회할 때는 정확하게 순서 및 값을 지정해야 된다. 값으로 조회 db.collection.fine({key:value}) # 배열형식의 조회는 순서가 정확하게 일치해야 함 db.collection.fine({key:[v1,v2,v3]}) # 하나 이상의 배열요소와 일치하는 값 반환 # 배열의 순서 및 갯수 무관하며 값의 일치여부만 확인 db.collection.find({key:{$all:[v1,v2]}}) # example # grade 배열 중 'A' 가 있는 경우 > db.user2.find({grade:'A'}) # grade 배열이 'A', 'B', 'C' 인 경우 > db.user2.find({grade:['A','B','C']}) # 1개 # grade 배열 중 'A'..

Database/SQL

[Oracle] SQLPlus 로 계정 생성 및 권한 부여하기

관리자 계정 접속 cmd 에서 sqlplus sys/관리자비밀번호 에러 발생 시, Enter user-name: sys as sysdba Enter password: 관리자 비밀번호 새로운 계정 생성 create user 아이디 identified by 비밀번호; 권한 부여 grant connect,resource,dba to 아이디;

Database/SQL

[SQLD] SQLD 단원별 내용 정리

개념 정리 과목명 장 링크 데이터 모델링의 이해 데이터의 모델링 https://gangintheremark.tistory.com/202 데이터 모델과 성능 https://gangintheremark.tistory.com/203 SQL 기본 및 활용 SQL 기본 https://gangintheremark.tistory.com/209 https://gangintheremark.tistory.com/210 SQL 활용 https://gangintheremark.tistory.com/212 https://gangintheremark.tistory.com/214 SQL 최적화의 원리 https://gangintheremark.tistory.com/215 주관식(단답형) 시험문제 대비 [SQLD 시험 대비] 시험장..

Database/SQL

[SQL] SQL 최적화의 원리

옵티마이저(Optimizer) SQL의 실행 계획을 수립하고 SQL을 실행하는 데이터베이스 관리 시스템의 소프트웨어 동일한 결과가 나오는 SQL도 어떻게 실행하는냐에 따라 성능이 달라짐 옵티마이저 특징 데이터 사전(Data Dictionary)에 있는 오브젝트 통계, 시스템 통계 등의 정보를 사용해 예상되는 비용 여러 개의 실행 계획 중 최저비용을 갖고 있는 계획을 선택해서 SQL 실행 옵티마이저의 필요성 건수가 많은 EMP테이블을 실행하고 찾은 행을 DEPT테이블에서 찾으면 불필요한 비교 횟수가 증가하게 된다. DEPT테이블을 머저 읽고, EMP테이블을 읽게되면 비교횟수를 줄일 수 있다. 옵티마이저는 이러한 실행 계획을 수립하는 것이며, 비효율적으로 실행 계획을 수립하면 옵티마이저에게 실행 계획을 변경..

Database/SQL

[SQLD] SQL 활용 II

윈도우 함수(Window Function) Partition과 Group By 구문은 의미적으로 유사 Partition 구문이 없으면 전체 집합을 하나의 Partition으로 정의한 것과 동일 윈도우 함수 적용 범위는 Partition을 넘을 수 없다 Rank 함수 Rank 함수는 ORDER BY를 포함한 쿼리문에서 특정 칼럼에 대한 순위를 구하는 함수이며 동일한 값에 대해서는 동일한 순위를 부여하며 중간 순위를 비워둔 데이터를 추출한다. 💡 1 1 ➜ 3 ➜ 4 -- 고객별 매출액과 매출순위 SELECT 고객번호, 매출액, RANK() OVER(ORDER BY 매출액 DESC) 순위 FROM ~ GROUP BY 고객번호 -- 활동점수가 높은 고객을 게임상품ID별로 선별 SELECT 게임상품ID, 순위 ..

Database/SQL

[SQLD] SQL 활용 I

순수 관계 연산자 순수 관계 연산자에는 SELECT PROJECT JOIN DIVISION 이 있다. 연산자 기호 표현 의미 SELECT σ σ조건(R) 릴레이션 R에서 조건을 만족하는 투플 반환 ➜ 수평연산 PROJECT π π속성리스트(R) 릴레이션 R에서 주어진 속성들의 값만으로만 구성된 투플들 반환 ➜ 수직연산 JOIN ⋈ R⋈S 공통 속성을 이용해 릴레이션 R과 S의 튜플들을 연결하여 만들어진 새로운 튜플 반환 DIVISION ÷ R÷S 릴레이션 S의 모든 튜플과 관련이 있는 릴레이션 R의 튜플들을 반환 조인(JOIN) [SQL] ANSI 조인 ANSI조인은 모든 DBMS에서 사용 가능한 조인을 의미한다. 여러 테이블을 연결하는 조인 조건을 WHERE 절에 명시하지 않고 다른 방법을 통하여 기술..

Database/SQL

[SQLD] SQL 기본 II

내장 함수 단일행 함수 : 문자/숫자/날짜/변환/조건 함수 다중행 함수 : 집계 함수, 그룹 함수, 윈도우 함수 [SQL] SQL 함수 개요 Oracle SQL 함수의 종류로는 단일행 함수와 그룹함수가 있다. 단일행 함수 모든 행에 대해서 각각 적용되어 행의 개수와 동일한 개수를 반환하는 함수이다. SELECT WHERE ORDER BY 절에 사용 가능하다. 그 gangintheremark.tistory.com 함수의 입력 행수에 따라 단일행 함수와 다중행 함수로 구분 단일행 함수는 SELECT WHERE ORDER BY UPDATE절에 사용 가능 1:M조인이라 하더라도 M쪽에서 출력된 행이 하나씩 단일행 함수의 입력값으로 사용되므로 사용가능 다중행 함수도 단일행 함수와 동일하게 단일 값만 반환 날짜 함..

gangintheremark
'Database' 카테고리의 글 목록