inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

WHERE 해커랭크 문제풀이 1 + 중복된 값을 빼주는 DISTINCT

오라클로도 해보았는데 이 문법이 틀린건가여 ??

108

기팝

작성한 질문수 56

2

삭제된 글입니다

sql

답변 2

3

DevAutoPro

 안녕하세요 저도학생인데 ORACLE로 둘다 풀이해보고 있는데요~!

저도 문제풀이는 제대로 한거같은데 실행이 안되길래 삽질하다가 찾아서 알려드리려고 답변남겨요.

일단
SELECT DISTINCT CITY

FROM STATION 

까지는 이해되시죠?

이렇게 하면 쿼리가 출력이 되는데요.. 잘 살펴보시면 문제에서 모음을 소문자로 제시한것과 달리

실제 조회된 쿼리에서는 모음으로 시작하는 CITY의 이름들이 대문자로 시작합니다.

  • Irvington
  • Aliso Viejo
  • Osage City

이런식으로요. 근데 중요한게, 

ORACLE은 SQL을 작성할때 SQL문은 대소문자를 구분하지 않지만

문자열 데이타형은 기본으로 대소문자를 구분합니다/!!

그렇기 때문에

SELECT DISTINCT CITY

FROM STATION

WHERE 

city LIKE 'I%' 

OR city LIKE 'A%' 

OR city LIKE 'E%' 

OR city LIKE 'O%' 

OR city LIKE 'U%';

이렇게 대문자로 LIKE 뒤를 작성해주여야 합니다. (CITY의 Type이 VARCHAR2인데 이건 문자열 가변길이 데이터 형식입니다.)

따라서 결론은 문자열 조건 쿼리를 작성하실때 먼저 SELECT (칼럼) FROM (테이블) 을 먼저 조회해보시고  WHERE조건문을 입력하는걸 추천드립니다^^

(UPPER, LOWER를 쓰는 방법이 있지만 아직 안배웠기 때문에..) 

0

이보민

안녕하세요 zpzp627123님

오라클의 경우 저희 강의가 커버하는 범위가 아니기 때문에 답변이 어렵습니다.
웹서핑을 통하여 MySQL과 다르게 사용되는 문법이 있는지 확인해보시는 것이 좋으실 것으로 생각됩니다.

감사합니다.

IN 사용방법 문의

0

32

1

WHERE절에 LIKE문법을 IN으로 묶어서 사용

0

62

1

수강기간 변경 요청

0

114

2

Revising the Select Query 1 문제에서 질문입니다.

0

82

1

SQL제대로 공부하고 싶어서 수강했는데 SQLD시험에도 효과적일까요?

0

100

1

수강기한

0

110

2

해커랭크 문제풀이 처음부터 난이도 높아서 틀렸는데요.

0

101

2

OR 조건 간소화

0

60

1

Weather Observation Station 6 쿼리가 틀렸다고 나오는 이유를 모르겠어요

0

71

1

비교연산자 질문

0

60

1

HackerRank 진행 도와주세요

0

122

2

Weather Observation Station 12에서 Wrong Answer이 뜹니다.

0

77

2

섹션 3 . 10 . 질문있습니다

0

89

1

Weather Observation Station 12 질문

0

68

1

COLUMN에 대해 이해 안됨

0

124

2

수업 ppt 강의안 자료

0

201

2

SELECT * FROM city; 질문입니다

0

148

2

CEIL, FLOOR 함수 질문

1

380

2

w3schools 에러

1

223

2

Weather Observation Station 12 IN변환 및 관련 질문

0

155

1

해커랭크 Employee Salaries 문제 질문

0

138

1

해커랭크 문제풀이 1 에서

0

137

1

SELECT는 뭘 불러오는거고 FROM 은 뭘불러오는건가요

-1

198

1

해커랭크 문제풀이 중

0

111

1