SQL 인터뷰 질문에 대한 답변은 다음과 같습니다. 1. 하위 쿼리 및 정렬을 사용하여 두 번째로 높은 직원을 찾으십시오. 2. 각 부서에서 그룹화 및 하위 쿼리를 사용하여 가장 작은 직원을 찾으십시오. 3. 복잡한 분석을 위해 창 함수를 사용하십시오. 이러한 SQL 기술 및 모범 사례를 마스터하면 데이터 엔지니어링 및 데이터 분석 인터뷰에서 눈에 띄고 실제 작업을 편하게하는 데 도움이됩니다.
소개
데이터 엔지니어링 및 데이터 분석 분야에서 SQL (구조화 된 쿼리 언어)은 의심 할 여지없이 핵심 기술 중 하나입니다. 귀하가 데이터 엔지니어이든 인터뷰 준비를하는 데이터 분석가이든 SQL의 숙련도는 인터뷰에서 눈에 띄는 것뿐만 아니라 실제 작업에서도 편안하게 할 수 있습니다. 이 기사는 SQL 기술을 향상시키고 일련의 신중하게 선택된 SQL 인터뷰 질문 및 답변을 통해 인터뷰를 원활하게 통과하는 데 도움이됩니다.
이 기사를 읽으면 다음을 수행 할 수 있습니다.
- 일반적인 SQL 인터뷰 질문과 솔루션을 이해하십시오
- 일부 고급 SQL 팁 및 모범 사례를 마스터하십시오
- 인터뷰에서 SQL 능력을 보여주는 방법을 알아보십시오
SQL 기본 사항 검토
SQL은 관계형 데이터베이스를 관리하고 운영하는 데 사용되는 표준 언어입니다. 데이터가 데이터를 쿼리, 삽입, 업데이트 또는 삭제하든 SQL은 유능합니다. SQL의 몇 가지 주요 개념을 신속하게 검토합시다.
- SELECT 는 데이터베이스 테이블에서 데이터를 쿼리하는 데 사용됩니다.
- 조인은 둘 이상의 테이블을 결합하는 데 사용됩니다
- 조항이 사용되는 경우 기록을 필터링하는 데 사용됩니다
- 그룹 및 데이터는 데이터를 그룹화하고 집계하는 데 사용됩니다.
이러한 기본 지식은 SQL 인터뷰 문제를 이해하고 해결하는 초석입니다.
핵심 SQL 인터뷰 질문 분석
질문 : 테이블에서 두 번째로 많은 유급 직원을 찾는 방법은 무엇입니까?
이 질문은 하위 쿼리 및 정렬에 대한 이해를 검토합니다. 이 문제를 해결하는 방법을 살펴 보겠습니다.
MAX (급여)를 두 번째로 높은 것으로 선택하십시오 직원으로부터 여기서 급여 <(직원의 최대 (급여)를 선택);
이 질문은 먼저 가장 높은 급여를 찾은 다음 나머지 급여의 가장 높은 급여를 찾습니다. 이는 두 번째로 높은 급여입니다. 이 방법은 간단하고 간단하지만, 테이블에 직원이 한 명뿐이거나 모든 직원이 동일하게 지불되면이 방법은 NULL을 반환합니다.
질문 : 각 부서에서 가장 높은 유급 직원을 찾는 방법은 무엇입니까?
이 문제는 그룹화와 하위 퀘스트를 결합하여 해결해야합니다.
e1.name, e1.department, e1.salary를 선택하십시오 직원 E1에서 여기서 e1.salary = ( MAX (E2. SALARY) 선택 직원 E2에서 여기서 e2.department = e1.department );
이 쿼리는 하위 쿼리를 통해 각 부서의 최대 급여를 찾은 다음 기본 쿼리와 일치하여 기준을 충족하는 직원을 찾습니다. 이 접근법은 작동하지만 많은 양의 데이터의 경우 성능에 영향을 줄 수 있습니다.
질문 : 창 함수에 SQL을 사용하는 방법은 무엇입니까?
창 함수는 결과 세트 구조를 변경하지 않고 데이터의 복잡한 분석을 수행 할 수있는 SQL의 고급 기능입니다. 예를 들어, 각 직원이 부서 내에서 어떻게 순위를 매기는지 알아 봅니다.
선택 이름, 부서, 급여, RANK () OVER (SalaryRank로서 Salary Desc의 부서 명령 별 파티션) 직원으로부터;
이 쿼리는 Department별로 그룹화하고 연봉의 하강 순서로 순위를 매기는 RANK()
창 함수를 사용합니다. 창 함수는 복잡한 분석 작업을 처리 할 때 매우 유용하지만 다른 데이터베이스는 창 함수를 다르게 지원할 수 있습니다.
사용의 예
기본 사용 : 쿼리 및 필터 데이터
급여가 5,000 명 이상인 모든 직원을 찾는 간단한 예를 살펴 보겠습니다.
이름, 급여를 선택하십시오 직원으로부터 급여> 5000;
이 쿼리는 SELECT
사용하는 방법과 WHERE
데이터를 필터링하는 위치를 보여줍니다. 이는 매우 기본적이지만 실제 작업에서 매우 일반적입니다.
고급 사용 : 복잡한 쿼리 및 최적화
각 부서에서 상위 3 개의 높은 급여를 찾아야한다고 가정 해 봅시다. 이것은 더 복잡한 쿼리입니다.
e1.name, e1.department, e1.salary를 선택하십시오 직원 E1에서 여기서 3> ( COUNT (CORLET E2SALARY) 선택 직원 E2에서 여기서 e2.salary> e1.salary 및 e1.department = e2.department );
이 쿼리는 하위 쿼리 및 COUNT
기능을 사용하여 각 부서의 상위 3 명을 찾습니다. 이 접근법은 작동하지만 데이터 볼륨이 높을 때 성능 문제가 발생할 수 있습니다. 이 쿼리를 최적화하는 한 가지 방법은 창 함수를 사용하는 것입니다.
이름, 부서, 급여를 선택하십시오 에서 ( 선택 이름, 부서, 급여, Dense_Rank () Over (SalaryRank로서 Salary Desc의 부서 명령 별 파티션) 직원으로부터 ) 순위 여기서 SalaryRank <= 3;
이 문제는 DENSE_RANK()
창 함수를 사용하여보다 효율적으로 해결할 수 있습니다. 테이블을 한 번만 스캔하면됩니다.
일반적인 오류 및 디버깅 팁
SQL 쿼리의 일반적인 오류에는 구문 오류, 로직 오류 및 성능 문제가 포함됩니다. 몇 가지 일반적인 오류 및 디버깅 팁은 다음과 같습니다.
- 구문 오류 : 예를 들어 세미콜론 종료 명령문을 사용하는 것을 잊거나 잘못된 키워드를 사용하십시오. 해결책은 구문이 올바른지 확인하기 위해 SQL 문을 다시 확인하는 것입니다.
- 논리 오류 : 예를 들어, 쿼리 조건이 잘못 기록되어 잘못된 결과가 반환됩니다. 해결책은 논리가 올바른지 확인하기 위해 쿼리의 각 부분을 점차적으로 확인하는 것입니다.
- 성능 문제 : 예를 들어, 쿼리 실행 시간이 너무 길다. 해결책은
EXPLAIN
명령을 사용하여 쿼리 계획을 분석하고 병목 현상을 찾고 최적화하는 것입니다.
성능 최적화 및 모범 사례
실제 애플리케이션에서는 SQL 쿼리를 최적화하는 것이 매우 중요합니다. 다음은 몇 가지 최적화 팁과 모범 사례입니다.
- 인덱스 사용 : 인덱스는 특히 큰 테이블에서 쿼리 성능을 크게 향상시킬 수 있습니다. 자주 쿼리 된 열에서 색인을 작성하십시오.
- ** 선택을 피하십시오 *** : 필요한 열만 선택하여 데이터 전송 및 처리 시간을 줄일 수 있습니다.
- 하위 쿼리 대신 조인 사용 : 경우에 따라 조인을 사용하는 것이 하위 쿼리보다 효율적 일 수 있습니다.
- Pagination Query : 많은 양의 데이터를 처리 할 때 Limit 및 Offset을 사용하면 쿼리 성능이 향상 될 수 있습니다.
예를 들어, 수백만의 레코드가있는 테이블, 쿼리 성능을 최적화하는 방법이 있다고 가정합니다.
- INDEX CREATE INDEX idx_employee_salary 사용 직원 (급여); - 필요한 열만 선택하여 이름, 급여를 선택하십시오 직원으로부터 급여> 5000; - 서브 쿼리 대신에 결합 사용 E1.Name, E1.Department, e1.salary 직원 E1에서 가입하다 ( MaxSalary로 부서, Max (Salary)를 선택하십시오 직원으로부터 부서 별 그룹 ) e1.department = e2.department 및 e1.salary = e2.maxsalary; - Pagination Query 선택 이름, 급여 직원으로부터 급여> 5000 급여로 주문 제한 10 오프셋 0;
이러한 최적화 기술은 쿼리 성능을 크게 향상시킬 수 있지만 특정 상황에 따라 조정해야합니다.
요약
이 기사를 통해 일반적인 SQL 인터뷰 질문과 해당 솔루션을 마스터해야합니다. SQL은 인터뷰에서 중요한 기술 일뿐 만 아니라 데이터 엔지니어링 및 데이터 분석의 핵심 도구이기도합니다. 계속 연습하고 배우고 SQL 기술을 지속적으로 개선하면 인터뷰와 실제 작업에서 더 나은 성과를 거둘 수 있습니다.
위 내용은 SQL 인터뷰 질문 및 답변 : ACE 귀하의 데이터 엔지니어/분석가 인터뷰의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

실제 애플리케이션에서 SQL은 주로 데이터 쿼리 및 분석, 데이터 통합 및보고, 데이터 청소 및 전처리, 고급 사용 및 최적화에 사용되며 복잡한 쿼리를 처리하고 일반적인 오류를 피합니다. 1) 데이터 쿼리 및 분석을 사용하여 가장 많은 판매 제품을 찾을 수 있습니다. 2) 데이터 통합 및보고는 가입 운영을 통해 고객 구매 보고서를 생성합니다. 3) 데이터 청소 및 전처리는 비정상적인 연령 기록을 삭제할 수 있습니다. 4) 고급 사용 및 최적화에는 창 함수 사용 및 인덱스 생성이 포함됩니다. 5) CTE 및 조인은 SQL 주입과 같은 일반적인 오류를 피하기 위해 복잡한 쿼리를 처리하는 데 사용될 수 있습니다.

SQL은 관계형 데이터베이스를 관리하는 표준 언어이며 MySQL은 특정 데이터베이스 관리 시스템입니다. SQL은 통합 구문을 제공하며 다양한 데이터베이스에 적합합니다. MySQL은 가볍고 오픈 소스이며 안정적인 성능을 보이지만 빅 데이터 처리에는 병목 현상이 있습니다.

SQL 학습 곡선은 가파르지만 연습과 핵심 개념을 이해함으로써 마스터 할 수 있습니다. 1. 기본 작업에는 선택, 삽입, 업데이트, 삭제가 포함됩니다. 2. 쿼리 실행은 분석, 최적화 및 실행의 세 단계로 나뉩니다. 3. 기본 사용법은 직원 정보 쿼리와 같은 것이며 고급 사용량은 결합 연결 테이블 사용과 같은 것입니다. 4. 일반적인 오류에는 별칭 및 SQL 주입을 사용하지 않는 것이 포함되며,이를 방지하려면 매개 변수화 쿼리가 필요합니다. 5. 필요한 열을 선택하고 코드 가독성을 유지함으로써 성능 최적화가 달성됩니다.

SQL 명령은 MySQL에서 DQL, DDL, DML, DCL 및 TCL의 5 가지 범주로 나뉘어 데이터베이스 데이터를 정의, 운영 및 제어하는 데 사용됩니다. MySQL은 어휘 분석, 구문 분석, 최적화 및 실행을 통해 SQL 명령을 처리하고 인덱스 및 쿼리 최적화기를 사용하여 성능을 향상시킵니다. 사용의 예로는 데이터 쿼리에 대한 선택 및 다중 테이블 작업에 가입하는 것이 포함됩니다. 일반적인 오류에는 구문, 논리 및 성능 문제가 포함되며 최적화 전략에는 인덱스 사용, 쿼리 최적화 및 올바른 저장 엔진 선택이 포함됩니다.

SQL의 고급 쿼리 기술에는 하위 쿼리, 창 함수, CTE 및 복잡한 조인이 포함되어 복잡한 데이터 분석 요구 사항을 처리 할 수 있습니다. 1) 하위 쿼리는 각 부서에서 급여가 가장 높은 직원을 찾는 데 사용됩니다. 2) 창 함수와 CTE는 직원 급여 성장 동향을 분석하는 데 사용됩니다. 3) 성능 최적화 전략에는 인덱스 최적화, 쿼리 재 작성 및 파티션 테이블 사용이 포함됩니다.

MySQL은 표준 SQL 기능 및 확장을 제공하는 오픈 소스 관계형 데이터베이스 관리 시스템입니다. 1) MySQL은 한계 조항을 작성, 삽입, 업데이트, 삭제 및 확장과 같은 표준 SQL 작업을 지원합니다. 2) Innodb 및 Myisam과 같은 스토리지 엔진을 사용하여 다양한 시나리오에 적합합니다. 3) 사용자는 테이블 작성, 데이터 삽입 및 저장 프로 시저를 사용하는 것과 같은 고급 기능을 통해 MySQL을 효율적으로 사용할 수 있습니다.

sqlmakesdatamanagementaCcessibletoallbyprovingasimpleyetpooltooltoolforqueryinganddatabases.1) itworkswithrelationalDatabases.2) sql'sstrengthliesinfiltering, andjoiningdata, andjoiningdata, andjoiningdata

SQL 인덱스는 영리한 설계를 통해 쿼리 성능을 크게 향상시킬 수 있습니다. 1. B- 트리, 해시 또는 전문 지수와 같은 적절한 인덱스 유형을 선택하십시오. 2. 복합 인덱스를 사용하여 멀티 필드 쿼리를 최적화하십시오. 3. 데이터 유지 보수 오버 헤드를 줄이려면 과도한 인덱스를 피하십시오. 4. 불필요한 인덱스 재건 및 제거를 포함하여 정기적으로 인덱스를 유지합니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

PhpStorm 맥 버전
최신(2018.2.1) 전문 PHP 통합 개발 도구

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기

ZendStudio 13.5.1 맥
강력한 PHP 통합 개발 환경

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기
