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과 다르게 사용되는 문법이 있는지 확인해보시는 것이 좋으실 것으로 생각됩니다.

감사합니다.

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

0

45

1

수강기간 변경 요청

0

92

2

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

0

65

1

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

0

83

1

수강기한

0

94

2

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

0

75

2

OR 조건 간소화

0

47

1

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

0

60

1

비교연산자 질문

0

45

1

HackerRank 진행 도와주세요

0

105

2

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

0

70

2

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

0

77

1

Weather Observation Station 12 질문

0

59

1

COLUMN에 대해 이해 안됨

0

112

2

수업 ppt 강의안 자료

0

183

2

SELECT * FROM city; 질문입니다

0

135

2

CEIL, FLOOR 함수 질문

1

359

2

w3schools 에러

1

206

2

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

0

144

1

해커랭크 Employee Salaries 문제 질문

0

126

1

해커랭크 문제풀이 1 에서

0

130

1

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

-1

193

1

해커랭크 문제풀이 중

0

102

1

Revising the Select Query 1 문제가 약간 바뀌었어요

0

157

2