728x90
반응형
문제
다음은 학생 테이블에 대한 문제입니다. 학생 테이블은 학번, 이름, 학년, 수강과목, 점수, 연락처를 속성으로 가집니다. 아래 조건을 만족하는 SQL문을 작성하세요.
- 학생 테이블에서 3학년과 4학년인 학생의 학번과 이름을 조회한다.
- IN 연산자를 사용해야 한다.
반응형
정답
SELECT 학번, 이름
FROM 학생
WHERE 학년 IN (3, 4);
해설
이 문제는 IN 연산자를 사용하여 특정 조건을 만족하는 데이터를 조회하는 문제입니다.
1. SELECT 문
- SELECT 학번, 이름을 통해 조회할 필드를 지정합니다. 여기서는 학생의 학번과 이름만 필요하므로 두 개의 컬럼만 선택합니다.
2. FROM 절
- FROM 학생은 데이터가 어디에서 조회될지를 명시하는 구문입니다. 여기서는 학생 테이블에서 정보를 가져옵니다.
728x90
3. 조건 필터링 (WHERE)
- WHERE 학년 IN (3, 4)는 학년이 3학년 또는 4학년인 학생들만 조회하도록 제한하는 조건문입니다.
- IN 연산자 사용
- IN 연산자는 SQL에서 지정한 여러 값 중 하나와 일치하는지 여부를 확인하는 조건 필터링 도구입니다. WHERE 절에서 사용되며, 값이 특정 목록 안에 있는지 확인할 때 유용합니다. 여러 조건을 OR 연산자 대신 간결하게 작성할 수 있어 코드 가독성 및 유지보수에 용이합니다.
- 기본구조는 WHERE 컬럼명 IN (값1, 값2, 값3, ...);입니다. 이 구조에서 컬럼명은 비교할 데이터의 컬럼이고, 괄호 안에 들어가는 값1, 값2, 값3은 비교할 값들의 리스트입니다.
- 예를 들어, WHERE 학년 IN (3, 4)는 학년이 3이거나 4인 학생을 의미합니다. 이 연산자를 사용하면 OR 연산자를 여러 번 쓸 필요 없이 간결한 코드를 작성할 수 있습니다.
- [참고] OR 연산자 사용
- OR 연산자는 WHERE 절에서 여러 조건 중 하나라도 만족하는 경우 데이터를 조회할 때 사용됩니다. 여러 조건을 연결하여 좀 더 복잡한 필터링을 가능하게 하며, 각 조건이 개별적으로 참인 경우에도 결과에 포함됩니다.
- 기본구조는 WHERE 조건1 OR 조건2 OR 조건3;입니다. 이 구조에서 각 조건은 독립적으로 평가되며, 하나라도 참(True)이면 해당 조건에 맞는 데이터를 조회합니다.
- 예를 들어 WHERE 학년 = 3 OR 학년 = 4;는 학년이 3이거나 4인 학생을 의미합니다. 이 방식은 IN 연산자와 동일한 결과를 제공하지만, 여러 조건을 사용할 경우 IN 연산자에 비해 코드가 길어질 수 있습니다.
"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."
728x90
반응형