inflearn logo
강의

Course

Instructor

[A hundred words are not as good as seeing once] Advanced SQL problem solving for data analysis

Problem 2 solution and regular expression tutorial

HackerRank : Weather Observation Station 11 문제풀이

Resolved

116

88v2873

3 asked

0

image.png

저는 위와 같이 풀었는데 해설에서는 다른 풀이로 나오더라구요!

위와 같은 코드도 정답이 옳다고 나오긴하던데 위처럼 한꺼번에 쓰는 것보다 강의 속 풀이처럼 OR로 나눠 작성하는 것이 더 좋은 걸까요?

sql

Answer 1

1

communityai8509

안녕하세요, 인프런 AI 인턴입니다.
8_8___v님 질문해주셔서 감사합니다.

SQL 쿼리를 작성할 때, 한꺼번에 REGEXP를 사용해 조건을 지정하여 필터링하는 것과 OR로 나누어 조건을 설정하는 것 중 어떤 것이 더 나은지에 대한 차이는 주로 읽기 편의성과 유지보수에서 결정됩니다. 두 가지 방법 모두 동일한 결과를 가져올 수 있기에 정답으로 인정될 수 있습니다.

  1. 한꺼번에 쓰는 방식: 이 방법은 코드의 길이를 줄이고, 한 줄의 코드로 조건을 모두 처리할 수 있어 간결하게 보입니다. 그러나 복잡한 조건이 적용될 경우 다른 사람이나 나중에 코드를 읽는 사람이 이해하기 어려울 수 있습니다.

  2. OR로 나누어 작성하는 방식: 이 방법은 조건을 명확히 볼 수 있게 코드의 가독성을 높여줍니다. 각 조건이 독립적으로 작성돼 있어 추후에 코드를 유지보수할 때, 실수의 가능성을 줄이고 수정하기 쉽습니다.

따라서 강의 속 풀이처럼 OR로 나누어 작성하는 방법은 보다 직관적이고 명확한 코드를 작성하는 데 도움이 될 수 있습니다. 특히나 협업을 위한 코드 작성 시나, 복잡한 조건을 다룰 때는 OR로 나누는 방법을 고려하는 것이 좋습니다.

이해에 도움이 되셨길 바랍니다. SQL 작성 시 상황에 맞게 적절한 방법을 선택하시길 바랍니다.

추가적인 질문이나 도움이 필요하시면 언제든지 문의해 주세요.

Provided image
출처: HackerRank

강의기간 연장문의

0

96

2

SET4의 3번 자리바꾸기 문제 다른 풀이

0

185

1

set 3의 3번 문제- 데이터의 개수가 짝수일 때 질문

0

263

2

set 1 - 2번 문제풀이

0

258

1

세트2번 Binary Tree Nodes 질문입니다!

0

225

2

고급문제풀이set1 3번 문제

0

249

2

고급문제풀이 3번 INNERJOIN 활용시 오류

0

269

1

회사일하다 보니까 다 못듣고 수강기간이 다끝나가는데 .,. 수강기간 연장은 어떻게 할수 있나요?ㅜㅜ

0

320

1

[Weather 20 ] 2번째 쿼리도 따라 했는데 왜 다 실패일까요?

0

372

1

[Weather 20] 따라 했는데 왜 작동 안해요?

0

274

1

weather-20 왜 작동 안하는건가요?

0

226

1

Ollivander's Inventory 윈도우 함수 min() over

0

310

1

LeetCode 626. Exchange Seats 리트코드 제출 오류

0

506

2

섹션4에 3번 문제풀이 질문

0

376

2

SQL Project Planning 풀이 관련 문의

0

579

2

섹션 1번 4번문제 풀이

1

283

1

섹션1 2번 문제풀이 강의

0

301

1

set2 - 1 같게 작성했는데 답이 이상합니다.

0

285

1

max함수를 써서 풀지는 못하나요?

0

297

1

윈도우 함수를 이용해서 풀고 싶어서 써봤습니다. 더 간단하게 줄일 수 있을까요?

0

257

1

(Hacker Rank)Binary Tree 문제 질문

0

325

1

쿼리 두개로 작성하고 싶지 않아 하나로 어떻게든 만들어 봤습니다.

0

292

1

이런 풀이는 왜 안되는지 궁금해요

0

273

1

소수점 이하 숫자가 안나옵니다 ㅠㅠ

0

323

2