[자바 JDBC 게시판] 3일차

김정현·2022년 8월 10일

JDBC게시판

목록 보기
2/9

GROUP BY deptId 중

부서ID, 사원리스트, 평균연봉, 최고연봉, 최소연봉, 사원수 (집계함수 사용)

SELECT deptId , 
GROUP_CONCAT(`name`),
TRUNCATE(AVG(emp.salary),0),
MAX(salary),
MIN(salary),
COUNT(id)
FROM emp
GROUP BY deptId;
  • GROUP_CONCAT(컬럼) 그룹화된 데이터에 포함하고 있는 컬럼의 모든값 들을 모두 보여주는 함수

  • TRUNCATE(AVG(emp.salary),0)

    AVG(salary) 의 결과 값은 xxxx.0000의 데이터가 나온다.

    이때 소숫점 제거를 위해 사용하는 함수

ROUND(숫자,반올림할 자릿수) - 숫자를 반올림할 자릿수 +1 자릿수에서 반올림

TRUNCATE(숫자,버릴 자릿수) - 숫자를 버릴 자릿수 아래로 버림

🔎primary key (식별자)

1. 테이블의 특정 레코드를 읽거나 변경하려면 레코드끼리 구분할수있는 고유의 키가 필요

1) 값이 존재해야 하며 즉, NULL을 허용 하지않으므로 굳이 제약 조건 NOT NULL을 붙일 필욘없다.

2) 구분을 위한 고유값을 가져야한다.

2. 제약을 선언하는 위치에 따라 컬럼 제약과 테이블 제약으로 나뉜다.

CREATE TABLE 테이블명 (
컬럼명 데이터 타입 /*이 위치에 오면 컬럼제약*/
컬럼명 데이터 타입
컬럼명 데이터 타입
/*이 위치레 오면 테이블 제약*/
   PRIMARY KEY(컬럼명)
);

3. 복합키 COMPOSITE KEY

1) 기본키 필드가 하나여야 하는 것은 없으며 필드만으로 레코드를 특정하기 어려운경우 복합키 사용

2) 복합키는 두개의 필드를 묶어서 기본키로 지정하는것이므로 기본키가 두 개인것은 아니다. (테이블 당 기본 키는 하나 )

3) 두개이 상의 필드를 복합키로 지정할 때는 테이블 제약으로 가능 괄호 안에 필드 목록을 콤마로 구분하여 나열

0개의 댓글