SQLD: JOIN
JOIN FROM 뒤에 테이블을 두 개 이상 입력할 수 있다. 테이블을 두 개 이상 입력하게 되면 튜플(행)의 개수는 (테이블A의 개수 * 테이블B의 개수)로 곱으로 나오고, 컬럼(열)의 개수는 (테이블A의 개수 + 테이블B의 개수)인 합으로 나온다. 테이블이 두 개 이상이라면 테이블을 명시해서 컬럼을 입력해야 한다. SELECT TB_CUST...
JOIN FROM 뒤에 테이블을 두 개 이상 입력할 수 있다. 테이블을 두 개 이상 입력하게 되면 튜플(행)의 개수는 (테이블A의 개수 * 테이블B의 개수)로 곱으로 나오고, 컬럼(열)의 개수는 (테이블A의 개수 + 테이블B의 개수)인 합으로 나온다. 테이블이 두 개 이상이라면 테이블을 명시해서 컬럼을 입력해야 한다. SELECT TB_CUST...
GROUP BY, HAVING 절 GROUP BY 문법을 이용하면 집계를 구할 수 있다. 여기서 집계라 함은 합계를 구한다거나, 개수, 최대값, 평균값 등 보다 의미 있는 정보를 구하는 것을 일컫는다. SELECT 소속반, COUNT(*) AS 반별인원수 FROM 수강생정보 GROUP BY 소속반; GROUP BY는 특정 컬럼을 기준...
함수 함수는 입력 값을 넣어 특정한 기능을 통해 결과 값을 출력해준다. 함수가 어떻게 만들어져 있는지는 알 필요가 없으며, 입력 개수, 출력 개수, 그리고 기능만 알면 된다. 내장형 함수 내장형 함수란 DBNS에 미리 만들어져 있어 사용이 가능한 함수이다. 문자형 함수: UPPER, SUBSTR, TRIM, REPLACE … 숫자형 함수: ...
MVC 패턴
아키텍처란? 아키텍처가 무엇인지에 대한 감이 꽤나 오랜 기간 잡히지 않았다. 누군가가 디렉토리 구조를 아키텍처라고 칭하는 것을 보기도 했고, 또 어디서는 설계 원칙이라고 하는 것을 보기도 했다. 정의는 아래와 같다고 한다. the fundametal organization of a system, embodied in its component...
아키텍처 아키텍처 패턴으로는 MVC를 채택하기로 했으며, 유지보수성을 고려하여 DRY와 KISS를 원칙들을 항시 고려하며 개발할 예정이다. 이러한 패턴과 원칙들이 있다는 것을 지난 프로젝트 할 때는 알지 못했기 떄문에 이번에는 가장 널리 사용되는 것들을 적용할 것이다. 여기에 추가적으로, 클린 아키텍처와 같은 다른 구조도 시간이 나면 별도로 공부를...
사이드 프로젝트 사이드 프로젝트의 필요성은 정글이 끝나기 전부터 알고 있었다. 아무래도 정글에서 진행한 프로젝트가 데모에 초점을 맞춘 경향도 있고, 실제 서비스랑은 거리가 좀 있다는 점에서 당시 멘토님도 사이드 프로젝트를 권장하셨다. 다만 기획쪽에서 워낙 많이 반려를 당한 팀이다 보니 무언가를 새로 시작할 엄두가 나지 않았다. 특히나 스터디, 자격...
크루스칼 알고리즘 최소 비용 신장 트리 (Minimum Spanning Tree, MST)를 구하는 알고리즘으로, 시간 복잡도는 O(E log V)이며, E는 간선(Edge)의 개수, V는 정점(Vertex)의 개수이다. 최소 비용 신장 트리란? 최소 비용 신장 트리, 또는 최소 신장 트리란 주어진 그래프의 모든 정점들이 연결되어...
일곱 번째 스터디 본래 지난 주에 진행했어야 할 내용이나, 스터디원들의 스케줄 이슈로 한 주 건너뛰고 이번 주에 진행하게 되었다. 아마 1~2주 이내로 스터디 분량이 마무리 될 것 같아서 그래도 기존에 목표로 했던 8월 이내에 마무리 지을 수 있을 것 같다. 키워드 웹소켓과 소켓 통신 Q: 소켓과 포트의 차이가 무엇인가요? A: 소켓은 네...
버전관리 버전 관리 시스템(VCS, Version Control System)이란 파일 모음의 변경 사항을 추적하는 프로그램이다. VCS의 목적 중 하나는 이전 버전의 개별 파일 또는 전체 프로젝트를 손쉽게 찾아볼 수 있도록 하는 것이다. 또 다른 목적으로는 다수의 팀원들이 하나의 프로젝트를 함께 작업하면서도 서로의 작업에 영향을 끼치지 않도록 하는...