본문 바로가기

반응형

전체 글

(70)
데이터베이스 설계와 정규화 데이터베이스를 설계하다 보면 어떻게 설계하는 것이 좋을지 고민해 본 적이 있을 것이다. 이번 시간에는 좋은 데이터베이스가 무엇인지 또 그것을 위한 가이드라인을 알아보고 정규화와 역정규화에 대해서도 알아보겠다. 글에 나오는 릴레이션은 테이블이라고 생각해도 된다. 좋은 데이터베이스 설계란? 좋은 데이터베이스를 설계하기 위해서는 아래 4가지 항목을 지키기 위해 노력해야 한다. 속성의 의미를 명확하게 표현하고 있어야 한다. 튜플의 중복값을 최소화하여야 한다. 튜플의 null 값도 최소화하여야 한다. 불필요한 튜플 생성 가능성을 허용해서는 안된다. 좋은 데이터베이스 스키마 설계를 위한 가이드라인 1) 하나의 엔티티 또는 릴레이션 타입에는 하나의 릴레이션 스키마를 설계해라! 하나의 스키마에 여러 개체나 관계 타임을..
[클린 코드] 클린 코드와 의미 있는 이름 짓기 로버트 C. 마틴의 클린 코드 도서를 정리한 내용입니다. 클린 코드란? 성능이 좋은 코드 의미가 명확한 코드 (읽기 쉬운 코드) 중복이 제거된 코드 왜 클린 코드를 짜야 할까? 프로그래머는 코드를 읽는 시간이 새로운 코드를 짜는 시간보다 훨씬 많기 때문이다. 그렇기 때문에 읽기 쉬운 코드를 짜는 것은 너무나도 중요한 일이다. 클린 코드를 짜는 것은 상당한 노력이 필요하다. 마감일을 맞추기 위해 어쩔 수 없이 나쁜 코드를 작성하고 코드의 영향 범위가 너무 커서 괜히 건들였다가 다른 부분에 버그가 생길 까 두려워 나쁜 코드를 방치한다. 하지만 이런 나쁜 코드들은 나중에 결국 생산성을 저하 시키게 된다. 지속적인 클린 코드를 작성하기 위해 보이스카우트 룰을 적용시켜보자 "떠날 때는 찾을 때 보다 캠프장을 더욱..
SQL 집단함수와 GROUP BY 절, HAVING 절 정리 집단 함수 검색 결과의 합이나 개수 등 요약 정보를 제공하는 함수로 COUNT, SUM, MAX, MIN, AVG 가 있다. 집단 함수는 SELECT 절 만이 아닌 WHERE 절에도 올 수 있다. 일반적으로 집단 함수는 null 값은 제외하고 계산한다. 만약 전체가 null 이면 null 값을 돌려주지만 COUNT인 경우에는 0을 돌려준다. 사용 예시 1. 직원의 급여 합, 급여 최대값, 급여 최솟값, 급여 평균을 검색하라 SELECT SUM(Salary), Max(Salary), MIN(Salary), AVG(Salary) FROM EMPLOYEE; 2. 직원의 수를 검색하라 SELECT COUNT(*) FROM EMPLOYEE; 3. 급여 종류의 수를 검색하라 SELECT(DISTINCT Salary..

반응형