- ORM
- N:1
- distinct
- 백트래킹
- DB
- 스택
- count
- 쟝고
- 이진트리
- Tree
- 그리디
- delete
- regexp
- 뷰
- 완전검색
- create
- M:N
- Queue
- outer join
- migrations
- update
- 큐
- Django
- 통계학
- Article & User
- Vue
- drf
- stack
- SQL
- 트리
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
목록SQL (155)
데이터 분석 기술 블로그
SolutionSELECT teacher_id, COUNT(DISTINCT(subject_id)) AS cntFROM TeacherGROUP BY teacher_id;
Solution 1SELECT DISTINCT(CITY)FROM STATIONWHERE CITY NOT REGEXP '^[aeiouAEIOU]' AND CITY NOT REGEXP '[aeiouAEIOU]$' Solution 2SELECT DISTINCT(CITY)FROM STATIONWHERE CITY REGEXP '^[^aeiouAEIOU]' AND CITY REGEXP '[^aeiouAEIOU]$'
SolutionSELECT query_name, ROUND(SUM(rating / position) / COUNT(query_name), 2) AS quality, ROUND(SUM(CASE WHEN rating 1. rating이 3 이하인 개수를 구해야 하는데 CASE WHEN을 사용할 수 있는지 몰랐었다. 그리고 꼭 END를 뒤에 붙여야 한다.2. WHERE 절 없이 제출했더니 query_name이 null인 경우는 계산이 안되게 해야 했다.. 근데 문제에 그런 말이 없는데.. Test Case에도 없고.. 디버깅한 것으로 만족해야겠다.
Solution1SELECT DISTINCT(CITY)FROM STATIONWHERE CITY REGEXP '^[^aeiouAEIOU]' OR CITY REGEXP '[^aeiouAEIOU]$'; Solution 2SELECT DISTINCT(CITY)FROM STATIONWHERE CITY NOT REGEXP '^[aeiouAEIOU]' OR CITY NOT REGEXP '[aeiouAEIOU]$';
SolutionSELECT contest_id, ROUND(COUNT(contest_id) * 100 / (SELECT COUNT(*) FROM Users), 2) AS percentageFROM RegisterGROUP BY contest_idORDER BY percentage DESC, contest_id ASC; Users에서 총개수를 구해야 한다는 것은 알고 있었는데 JOIN이 아니라 어떤 식으로 구할지를 몰라서 확인해 보니 총 개수 구하는 부분에서 SQL문을 넣어서 사용하면 되었다.
SolutionSELECT DISTINCT(CITY)FROM STATIONWHERE CITY REGEXP '[^aeiouAEIOU]$';
SolutionSELECT p.project_id, ROUND(AVG(e.experience_years), 2) AS average_yearsFROM Project pLEFT JOIN Employee eON p.employee_id = e.employee_idGROUP BY p.project_id;