JOHOONDAY
본문 바로가기
728x90

전체 글141

SQL) JOIN (INNER/LEFT/RIGHT/OUTER) JOIN (INNER / LEFT / RIGHT / OUTER) 설명 둘 이상의 테이블을 연결하여 데이터를 확인할 수 있는 방법이다. 연결하고자 하는 테이블 간 공통적인 컬럼이 있어야 하며, 그 컬럼은 그 테이블의 PK 혹인 FK 로 사용되고 있어야 한다. [JOIN 설명을 위한 두 테이블 정의] CREATE TABLE S1 ( ID INT PRIMARY KEY, NAME VARCHAR(30) NOT NULL ); INSERT INTO S1 VALUES (111, 'AAA'), (222, 'BBB'), (333, 'CCC'), (444, 'DDD'); CREATE TABLE S2 ( ID INT PRIMARY KEY, NAME VARCHAR(30) NOT NULL ); INSERT INTO S2 VALU.. 2021. 8. 29.
sstream [stringstream] #include stringstream 설명 sstream 은 string stream 의 약자이다. string stream 는 주어진 어떠한 문자열에서 원하는 자료형으로 정보를 얻을 수 있다. 또한 여러가지 자료형을 가진 데이터들이 들어올 때 효과적으로 관리를 할 수 있다. stringstream 은 저장이 된 문자열에서 공백(' ')과 줄바꿈('\n') 을 기준으로 문자열을 구분하여 처리한다. 1) 문자열에 대해서 띄어쓰기를 기준으로 원하는 자료형으로 분리를 할 수 있다. #include #include using namespace std; int main() { string out; string strInput = "Hello world hello C++"; stringstream s_stream.. 2021. 8. 29.
백준 No.11400 [단절선] BOJ No.11400 [단절선] 문제 11400번: 단절선 (acmicpc.net) 11400번: 단절선 첫째 줄에 두 정수 V(1≤V≤100,000), E(1≤E≤1,000,000)가 주어진다. 이는 그래프가 V개의 정점과 E개의 간선으로 이루어져 있다는 의미이다. 다음 E개의 줄에는 간선에 대한 정보를 나타내는 두 정수 A www.acmicpc.net 설명 * 그래프 * 단절선 단절선 : 어떠한 그래프에서 임의의 간선을 제거했을 때 두 개 이상의 그래프들로 나누어지게 하는 간선 [단절점]과 거의 비슷하게 생각을 하면 된다. 하지만 간선을 제거하는 경우는 단절점과 같이 정점을 제거하는 경우와 조금 다르게 다뤄지는 부분이 있다. 1. 단절선을 찾는 알고리즘은 단절점을 찾는 알고리즘과는 달리 루트노드를 .. 2021. 8. 29.
백준 No.3190 [뱀] BOJ No.3190 [뱀] 문제 3190번: 뱀 (acmicpc.net) 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net 설명 * 구현 우선순위 큐 와 셋 을 사용하여 구현을 해서 풀었다. 게임이 끝나는 조건은 두 가지 조건이 있다. 1. 벽과 만나는 경우 -> 현재 위치가 맵을 벗어났을 때 현재 시간을 return 하였다. 2. 몸과 부딪히는 경우 -> 현재 몸이 있는 좌표들을 set 에 추가하여 몸과 부딪히는 여부를 파악하였다. 2-1) 현재 좌표에 해당하는 set 이 이미 있다면, 몸과 부딛힌 경우이므로 현재.. 2021. 8. 26.
SQL study [21.08.25] SQL study [21.08.25] FOREIGN KEY REFERENCES () ON DELETE ~ CREATE TABLE Parent ( ID INT PRIMARY KEY, SCORE INT NOT NULL, NAME VARCHAR(30) ); CREATE TABLE Child ( PID_CASCADE INT, #DELETE/UPDATE 시 CASCADE 처리되는 FK PID_SETNULL INT, #DELETE/UPDATE 시 SET NULL 처리되는 FK NUMBER INT, FOREIGN KEY (PID_CASCADE) REFERENCES Parent(ID) ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY (PID_SETNULL) REFERENCES P.. 2021. 8. 25.
SQL study [21.08.24] SQL study [21.08.24] 제약조건 [Constraint] : 테이블에 잘못된 입력을 막기 위해서 일정한 규칙을 지정하는 것 - NOT NULL #NULL값 입력 금지 - UNIQUE #중복값 입력 금지 (NULL 값 중복입력은 가능) - PRIMARY KEY : NOT NULL + UNIQUE - FOREIGN KEY : 다른 테이블의 컬럼을 조회해서 무결성 검사 - CHECK : 조건으로 설정된 값만 입력 허용 컬럼에 제약조건 설정 CREATE TABLE Accounts ( id INT NOT NULL UNIQUE, #PRIMARY KEY 역할 Name VARCHAR NOT NULL #NOT NULL! ); 테이블에 제약 설정 CREATE TABLE study( Id INT NOT NULL.. 2021. 8. 24.
SQL study [21.08.23] SQL study [21.08.23] ALTER 1. ADD #테이블에 필드를 추가 - ALTER TABLE ADD 2. DROP #테이블에서 필드를 삭제 - ALTER TABLE DROP 3. MODIFY COLUMN #테이블에서 필드의 타입을 변경 - ALTER TABLE MODIFY COLUMN CASE #1) VALUE 값에 따라 switch~case 문 실행 CASE value WHEN [compare_value] THEN result [WHEN [compare_value] THEN result] --... [ELSE result] END #2) true인 condition 의 result 가 선택됨 CASE WHEN [condition] THEN result [WHEN [condition] T.. 2021. 8. 24.
SQL) 연산자 우선순위 연산자 우선순위 (Operator precedence) 2021. 8. 23.
백준 No.11266 [단절점] BOJ No.11266 [단절점] 문제 11266번: 단절점 (acmicpc.net) 11266번: 단절점 첫째 줄에 두 정수 V(1≤V≤10,000), E(1≤E≤100,000)가 주어진다. 이는 그래프가 V개의 정점과 E개의 간선으로 이루어져 있다는 의미이다. 다음 E개의 줄에는 간선에 대한 정보를 나타내는 두 정수 A, B www.acmicpc.net 설명 * 그래프 * 단절점 단절점 : 어떠한 그래프에서 임의의 정점을 제거했을 때 두 개 이상의 그래프들로 나누어지게 하는 정점 개념 자체는 간단하다. 위 그래프에서 단절점은 3, 5 번째 정점이 될 것이다. 3번 정점을 제거함으로써 3개의 그래프로 나뉘어지고, 5번 정점을 제거함으로써 2개의 그래프로 나뉘어졌기 때문이다. 단절점에 대한 파악은 루트노.. 2021. 8. 21.
SQL study [21.08.19] SQL study [21.08.19] SQL 문장들의 종류 오늘의 한 마디 : 오늘과 내일은, 2일뒤 토요일 (8/21) 에 있을 SDS SW 검정시험을 준비해야해서 SQLD 공부는 많이 하지 못 하였다. 토요일 시험이 끝난 뒤 2주간은 이제 SQLD공부에 힘을 쏟아야겠다. 2021. 8. 19.
SQL study [21.08.18] SQL study [21.08.18] MySQL workbench Study / Programmers Study : HOUR(DATETIME) # DATETIME 의 시간만 따 오는 것. : 이름이 있는 동물들을 찾으려면 IS NOT NULL SHOW DATABASES; USE world; SHOW TABLES; DESC city; SELECT COUNT(*) FROM city; # city table 에 있는 모든 도시들의 수가 나옴 SELECT AVG(Population) FROM city; # 도시들의 평균 인구수 SELECT CountryCode, MAX(Population) FROM city GROUP BY CountryCode HAVING MAX(Population) > 8000000; # H.. 2021. 8. 19.
SQL study [21.08.17] SQL study [21.08.17] 분산 데이터베이스 - 여러 곳으로 분산되어있는 데이터베이스를 하나의 가상 시스템으로 사용할 수 있도록 한 데이터베이스 - 논리적으로 동일한 시스템에 속하지만, 컴퓨터 네트워크를 통해 물리적으로 분산되어 있는 데이터들의 모임 - 데이터베이스를 연결하는 빠른 네트워크 환경을 이용하여 데이터베이스를 여러 지역 여러 노드로 위치시켜 사용성/성능 등을 극대화 시킨 데이터베이스 * 장점 1. 지역 자치성, 점증적 시스템 용량 확장 2. 신뢰성 / 가용성 3. 효용성 / 융통성 4. 빠른 응답 속도 / 통신 비용 절감 5. 데이터의 가용성과 신뢰성 증가 6. 시스템 규모의 적절한 조절 7. 각 지역 사용자의 요구 수용 증대 * 단점 1. 소프트웨어 개발 비용 2. 오류의 잠재성 .. 2021. 8. 18.
백준 No.1261 [알고스팟] BOJ No.1261 [알고스팟] 문제 1261번: 알고스팟 (acmicpc.net) 1261번: 알고스팟 첫째 줄에 미로의 크기를 나타내는 가로 크기 M, 세로 크기 N (1 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 미로의 상태를 나타내는 숫자 0과 1이 주어진다. 0은 빈 방을 의미하고, 1은 벽을 의미 www.acmicpc.net 설명 * Dijkstra (다익스트라) * 너비 우선 탐색 (BFS) 주어진 미로의 각 좌표들을 노드라고 생각하고, 좌표에서 이동할 수 있는 방향은 상하좌우로 인접한 네 방향이므로 이 네 방향을 하나의 간선이라고 생각할 수 있다. 좌표의 최대 크기는 100 * 100 이다. 따라서 노드의 최대 개수는 10,000 개가 되며 한 노드당 좌표의 모서리에 위치한.. 2021. 8. 17.
SQL study [21.08.16] SQL study [21.08.16] 슈퍼타입 모델링 - 장점 : 전체 사원에 대한 검색 용이. 무결성에 유리. - 단점 : 서브타입별 속성이 많다면 위와 같이 발생하는 NULL 이 지나치게 발생할 수 있다. 서브타입 모델링 - 장점 : 슈퍼타입 모델링에 비해 NULL 이 없거나 줄어들고, 정규직/임시직 사원을 별개로 처리하는 업무가 많은 경우 용이 - 단점 : UNION 함수 사용시 중복제거가 되기 때문에 사번의 유일성 관리를 잘 해야함. 트랜잭션 - 항상 전체를 통합하여 분석 처리 한다. - 슈퍼-서브타입이 하나의 테이블로 통합되어 있으면 다른 형식에 비해 성능이 더 우수하다. 인덱스 - 값의 범취에 따라 일정하게 정렬이 되어있다. - '=' 로 조호되는 칼럼이 가장 앞으로 나오면 좋다는 거 같다. .. 2021. 8. 17.
백준 No.1626 [두 번째로 작은 스패닝 트리] BOJ No.1626 [두 번째로 작은 스패닝 트리] 문제 1626번: 두 번째로 작은 스패닝 트리 (acmicpc.net) 1626번: 두 번째로 작은 스패닝 트리 첫째 줄에 그래프의 정점의 수 V(1 ≤ V ≤ 50,000)와 간선의 수 E(1 ≤ E ≤ 200,000)가 들어온다. 둘째 줄부터 E+1번째 줄까지 한 간선으로 연결된 두 정점과 그 간선의 가중치가 주어진다. 가중치는 100, www.acmicpc.net 설명 * 최소 스패닝 트리 / 최소 신장 트리 (MST) * 최소 공통 조상 (LCA) 먼저 최소 스패닝 트리(MST) 를 먼저 구해야 한다. 두 번째로 작은 스패닝 트리는 앞서 구한 MST 보다 총 가중치의 값은 최소한으로 늘어나야 한다. 문제에서 예제 입력을 가지고 최소 스패닝 트리.. 2021. 8. 17.
728x90