본문 바로가기

반응형

전체

[DB/SQL] 4. DML(Data Manipulate Language) - INSERT, SELECT [목차] 1. INSERT 2. SELECT 1) FROM, WHERE 2) AND, OR, NOT 3) LIKE 4) ORDER BY 5) DISTINCT DML(Data Manipulate Language), 데이터 조작 언어는 사용자가 데이터베이스에 대해 검색, 등록, 삭제, 갱신 등을 할 수 있도록 하는 데이터베이스 언어이다. 이전 게시글에 이어서 현재 테이블이 아래와 같이 이루어져 있다고 가정하자. 아직 열의 타입만 정의된 상태이다. 1. INSERT INSERT 명령어는 데이터를 테이블에 추가할 때 사용한다. 입력하지 않은 값은 자동으로 NULL값이 입력된다. 만약 입력하지 않은 열이 NOT NULL 속성을 가지고 있다면 default value를 가지고 있지 않다는 에러가 발생한다. 문법은 ..
[BOJ 1396] 크루스칼의 공 [문제] https://www.acmicpc.net/problem/1396 1396번: 크루스칼의 공 첫째 줄에는 그래프의 정점의 개수 n과 간선의 개수 m이 주어진다. 그리고 두 번째 줄에서 m+1번째 줄까지는 a b c의 형태로 a와 b를 잇는 간선의 고유값이 c라는 의미이다. m+2번째 줄에는 알고 싶은 www.acmicpc.net [난이도] - Platinum I (21.06.10 기준) [필요 개념] - Union-Find - Parallel Binary Search (병렬 이분 탐색) or LCA [풀이] 이 문제는 크게 두 풀이로 나뉜다. 첫 번째로는 PBS(병렬 이분 탐색)이다. 흔히 PBS의 대표 예제 문제로 알려져 있는데, 조만간 PBS에 대한 글을 따로 작성할 예정이라 자세한 풀이는 ..
[DB/SQL] 3. SQL 특징 & DDL(Data Definition Language) [목차] 1. SQL이란? 2. SQL의 특징 3. DDL (Data Definition Language) 1. SQL이란? SQL은 Structured Query Language의 줄임말로, 관계형 데이터베이스 시스템(RDBMS)에서 데이터를 관리, 처리하기 위해 설계된 프로그래밍 언어이다. 1970년대 IBM에서 SEQUEL(Structured English Query Language)이라는 이름으로 처음 개발되었으며, 후에 Structured Query Language로 다시 이름이 지어졌다. SQL 문법의 종류는 다음 세 가지로 분류된다. - Data Definition Language (DDL) : Schema definition (CREATE, ALTER, RENAME, DROP,...) - ..
[DB] 2. Relational Algebra (관계 대수) [목차] 1. Data Manipulation Languages (DMLs) 2. Relational Algebra 1. Data Manipulation Languages (DMLs) 데이터베이스로부터 정보를 얻거나, 저장하는 데 사용하는 두 가지 방식의 '데이터 언어'가 있다. 절차적 언어 : Relational Algebra (관계 대수). 원하는 결과를 찾기 위해서 데이터의 처리 과정을 구체화해야 한다. 비절차적 언어 : Relational Calculus (관계 해석). 원하는 결과만 구체화하고, 어떻게 찾을지는 필요하지 않다. 원하는 데이터를 얻기 위해서 릴레이션에 필요한 쿼리(Query)를 수행할 때 사용한다. 데이터를 쉽고 빠르고 정확하게 얻기 위해 사용되며, 절차적 또는 비절차적 언어로 모..
코드포스 오렌지 달성 :) 드디어 인생 목표였던 오렌지를 달성했다. 인생에서 이렇게 욕심 있었던 목표가 거의 없었던 것 같다... (인생에 얼마나 도움이 될지는 모르겠지만..) 퍼플을 달성하고 약 7개월만에, 코포를 시작하고 약 13개월 만이다. 짧아 보이는 기간이지만 13개월 동안 rated 라운드만 90번을 참여했다. 버추얼까지 합치면 평균적으로 일주일에 2번 정도는 참가했으니 거의 코포와 함께한 1년이라고 해도 무방하다 :( 사실 이번에 달성한 오렌지는 처음 퍼플을 달성했을 때 보다 더 나한테 의미가 있는게, 당연히 오렌지라서 더 기쁜 것도 있지만, 저번처럼 단숨에 운 좋게 오렌지를 찍은 게 아니라 한동안 퍼플 중상위권을 계속 유지하다가 올라왔다는 거다. 첫 퍼플은 너무 갑작스럽게 찍어서 아직 퍼플이 될만한 실력이 아니라는 ..
[Toy Project] 자동매매 프로그램 만들기 - 7. 매매 정보 엑셀에 기록하기 [목차] 1. 매매 함수 반환 값 분석 2. 매매 기록 엑셀에 자동 기록 3. 주기적으로 엑셀에 시가 기록 1. 매매 함수 반환 값 분석 매매 정보를 엑셀에 기록하기에 앞서, 매매를 했을 때 반환되는 결과가 어떤 형태인지 먼저 알아보자. 우선, 매매할 때 이용하는 함수는 buy_limit_order / sell_limit_order 또는 buy_market_order / sell_market_order이다. 업비트의 API 가이드에 따르면 이 함수들의 반환 값은 다음과 같다. 실제로 반환 값을 출력해보면 아래와 같이 딕셔너리의 형태로 이루어져 있는 것을 볼 수 있다. 여기서 우리가 반드시 기록할 필요가 있는 변수들이 무엇이 있을까? 기본적으로 매매한 코인명과 매매 시간, 매매한 양은 필요할 것이다. 따라..
[DB] 1. Relational Model (관계형 모델) [목차] 1. Database Management System 2. Relational Model이란? 3. Relation 4. Relational Model의 특징 1. Database Management System 데이터베이스 관리 시스템(Database Management System, DBMS)은 다수의 사용자들이 데이터베이스 내의 데이터를 접근할 수 있도록 해주는 소프트웨어 도구의 집합이다. 범용 DBMS는 데이터베이스의 정의, 생성, 질의, 업데이트, 관리 등을 위해 고안되었다. 초기의 DBMS에서는 데이터베이스가 가진 독립체와 속성인 '논리 계층(Logical layer)'과 이들이 저장되는 방식인 '물리 계층(Physical layer)'이 매우 밀접한 관계였기 때문에, 물리 계층을 바..
[Toy Project] 자동매매 프로그램 만들기 - 6. openpyxl 모듈 알아보기 [목차] 1. openpyxl 모듈이란? 2. 엑셀 파일 불러오기 3. 셀의 데이터 불러오기 4. 엑셀 파일/시트 만들기 5. 셀에 데이터 작성하기 자동매매 프로그램으로 매매를 하는 경우, 내가 정한 매매 전략이 효과적으로 작용하는지 알아보기 위해서는 매매한 기록들을 모두 저장한 후 분석하는 과정이 필요하다. 하지만, 매번 매매한 정보를 직접 기록하는 것은 자동매매의 성격과 맞지 않으므로, 자동으로 매매를 수행할 때마다 이에 대한 정보를 실시간으로 알아서 기록해주는 기능이 필요하다. 따라서 이 기능을 프로그램에 적용하기 앞서, 파이썬을 이용하여 엑셀에 읽고 쓰는 기능을 할 수 있게 해주는 openpyxl 모듈에 대해서 먼저 알아보자. 1. openpyxl 모듈이란? 파이썬에서 엑셀을 다룰 수 있도록 하는..