Mysql을 한번도 해보지 않아서 신청해보았던 프로그램이다
사전미션 질문과 답변은 아래
사전미션
1. 데이터베이스와 테이블의 차이는 무엇인가요?
- 데이터베이스는 테이블 구조를 포함하고 있는 저장소이고 테이블은 데이터베이스 안에 포함되며, 관리가 쉽도록 구분되고 서로 연결되어 있는 자료구조이다.
2. MySQL에서 데이터를 조회할 때 사용하는 기본 SQL 명령어를 설명해주세요.
- SELECT : 특정 테이블의 데이터를 선택하여 조회할 때 사용한다.
- WHERE : 조회할 데이터의 조건을 설정할 때 사용하여 컬럼의 데이터 종류나 범위를 지정할 수 있다.
- FROM : 범위(조회할 데이터의 테이블)를 설정할 때 사용한다.
- HAVING : 같은 그룹으로 묶어줄 때 사용한다.
-JOIN : 여러 테이블을 결합할 때 사용한다.
- ORDER BY : 조회한 데이터를 출력할 때 사용되는 정렬기준이다.
3. 'Primary Key'와 'Foreign Key'의 차이와 각각의 역할에 대해 설명해주세요.
- 차이 : 외래키는 다른 테이블의 기본키를 참조해 다른 두 테이블을 연결하는 역할을 하고 기본키는 테이블 내 고유한 식별자로 데이터 검색과 관리를 용이하게 한다는 차이가 있다.
- Primary Key(기본키) : 테이블 내에서 각 행을 고유하게 식별하는 컬럼으로 중복되지 않은 유일한 값이다.
- Foreign Key(외래키) : 다른 테이블의 기본키를 참조하는 컬럼으로, 한 테이블의 컬럼이 다른 테이블의 컬럼과 연결하는 역할을 한다.
4. MySQL에서 'JOIN'이란 무엇이며, 'INNER JOIN'과 'LEFT JOIN'의 차이점은 무엇인가요?
- JOIN : 데이터베이스 내 여러 테이블에서 가져온 레코드를 조합하여 하나의 테이블이나 결과 집합으로 표현하는 것을 말한다.
- INNER JOIN과 LEFT JOIN의 차이 : LEFT JOIN은 합집합, INNER JOIN은 교집합이라 할 수 있다. 같은 조회 결과가 나올 경우INNER JOIN을 사용하는 게 성능에 효과적이다.
5. 정규화(Normalization)란 무엇이며 왜 중요한가요?
- 정규화 : 관계형 데이터베이스 설계에서 중복을 최소화하게 데이터를 구조화하는 프로세스이다.
- 중요한 이유 : 중복된 데이터를 허용하지 않기 때문에 데이터 무결성을 유지하고 이로 인해 데이터베이스 관리에 필요한 저장공간을 축소시키는 역할을 한다. 데이터베이스를 잘못 설계하면 이상(anomaly)현상이 일어날 수 있는데, 각 릴레이션에서 이상현상이 생기지 않도록 정규화 과정을 진행하는 것이 중요하다.
'개발 기록 > backend' 카테고리의 다른 글
[백엔드] 프리온보딩 객체지향 2차시 - 프로젝트로 시작하는 객체지향 (1) | 2024.01.09 |
---|---|
[백엔드] 원티드 프리온보딩 챌린지 객체지향 과제 - 설계 (0) | 2024.01.08 |
[백엔드] 프리온보딩 객체지향 1차시 - 소프트웨어 가치에서 시작하는 객체지향 (1) | 2024.01.07 |
[백엔드]대규모 설계 시스템 기초_사전미션 (1) | 2023.12.29 |
[백엔드]원티드 - 프로젝트 유연함을 높이는 객체지향 첫걸음_사전미션 (0) | 2023.12.27 |