inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[백문이불여일타] 데이터 분석을 위한 중급 SQL

CASE 해커랭크 문제풀이

END, 뒤에 * 붙이면 에러가 뜹니다

해결된 질문

203

advanceho

작성한 질문수 3

1

안녕하세요, 섹션3 조건문 type of triangle 문제에서 질문있습니다.

END, 뒤에 *를 붙이면 꼭 에러가 뜹니다. 해커랭크 뿐만아니라 W3스쿨에서도 그러던데 확인 좀 부탁드립니다. 다른 분들도 유사한 질문을 하신 것 같은데, 확인되면 수업 노트 보기에서라도 확인할 수 있게 내용 추가 좀 해주시면 감사하겠습니다.

 

SELECT *, CASE로 할 경우에는 정상 출력되긴 하더라고요.

image.png

 

sql

답변 2

1

윤선미

안녕하세요. 답변이 늦어 죄송합니다.

MySQL에서 테이블을 지정하지 않고 단독으로 사용하거나, SELECT의 첫 번째 항목으로만 사용할 수 있습니다. 예를 들어, 아래 처럼 작성하면 같은 결과를 출력해보실 수 있습니다.

1. SELECT의 첫 번째 항목으로 기술

SELECT *
     , CASE WHEN categoryid = 1 THEN price ELSE NULL END AS category1_price
FROM Products


2. 테이블을 지정하여 *를 사용

SELECT CASE WHEN categoryid = 1 THEN price ELSE NULL END AS category1_price
     , Products.*
FROM Products


수업 노트에 추가해두겠습니다. 좋은 질문 감사합니다.

-1

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.
advanceho님, SQL 사용 중에 발생한 에러에 대해 문의해 주셔서 감사합니다.

END 뒤에 *를 붙이면 MySQL에서 문법 오류가 발생할 수 있습니다. 이는 SQL에서 CASE 문을 끝낼 때 END 뒤에 쉼표를 사용하지 않고, AS를 통해 별칭을 지정해야 하기 때문입니다. 따라서 다음과 같은 형식으로 수정해 보세요:

SELECT *, 
CASE
    WHEN 조건 THEN '결과1'
    WHEN 조건 THEN '결과2'
    ELSE '기타'
END AS triangle_type 
FROM triangles;

이 방식으로 작성하면 에러가 발생하지 않고, 원하는 결과를 출력할 수 있을 것입니다. 더불어, 섹션 노트에 이와 같은 내용을 추가하여 다른 학습자들에게 도움이 되도록 제안해주신 부분 감사합니다.

혹시 더 궁금한 사항이 있으면 언제든지 문의해 주세요!

관련 이미지 링크
참고 자료 출처

리트코드 1280. Students and Examinations

0

74

3

16강 LEFT JOIN 리트코드 (183. Customers Who Never Order) 관련 질문

0

89

2

African Cities 문제관련 질문

0

53

1

SQL 코딩테스트 질문

0

206

1

HACKER RANK에서 문제찾기

0

94

2

강의 자료 다운로드

0

89

2

Asian population 문제가 없어요

0

76

2

INNER JOIN 에서 A.키 쓸때 빨간 색 나오고 'dause'

0

65

2

별칭 관련해서 질문 있습니다.

0

78

2

rising temperature 문제 질문

0

98

2

해커랭크 TOP EARNERS 문제 질문

0

97

1

ON 뒤에 질문

0

94

2

INNER JOIN 질문. 강의와 결과값이 다릅니다.

0

196

3

CustomerID가 중복되서 나타나요

0

232

3

별칭이 전체 테이블을 못 불러와요.

0

142

2

CASE WHEN 쿼리 오류 문의

1

324

3

CASE문제풀이 질문

0

124

1

Customers Who Never Order 풀다가 Alias관련 질문사항

0

136

1

Average Population 질문

0

127

1

Revising Aggregations - The Count Function 질문

0

101

1

Average Population of Each Continent 에대해서 질문

0

189

3

w3schools 에서 쿼리 작성 질문

0

156

1

INNER JOIN 할 때 NULL 값이 안보일 수도 있나요?

0

327

1

new_category 그룹핑 시 에러 (밑에분과 동일)

1

182

1