본문 바로가기

Data Science9

[SQL] 순위 함수 (RANK, DENSE_RANK, ROW_NUMBER, NTILE) 1. RANK 중복 값들에 대해 동일 순위로 표시하고, 중복 순위 다음 값에 대해서는 중복 개수만큼 떨어진 순위로 출력하도록 하는 함수 SELECT empNo, empName, salary, RANK() OVER (ORDER BY salary DESC) as RANK등수 FROM employee 2. DENSE_RANK 중복 값들에 대해서 동일 순위로 표시하고, 중복 순위 다음 값에 대해서는 중복 값 개수와 상관없이 순차적인 순위 값을 출력하도록 하는 함수 SELECT empNo, empName, salary, DENSE_RANK() OVER (ORDER BY salary DESC) as DENSE_RANK등수 FROM employee 3. ROW_NUMBER 중복 값들에 대해서도 순하적인 순위를 표시하.. 2022. 11. 12.
[Python] replace, 합집합/교집합/차집합, 리스트 문자열 합치기 - replace line = line.replace('?', '0') - 합집합 / 교집합 / 차집합 / 대칭차집합 # 합집합 union = list(set(lst1) | set(lst2)) # 교집합 intersection = list(set(lst1) & set(lst2)) # 차집합 complement = list(set(lst1) - set(lst2)) # 대칭차집합 something = list(set(lst1) ^ set(lst2)) - 리스트 문자열로 합치기 (''.join(l)) l = ['d', 'a', 't', 'a'] print(''.join(l)) #data print('_'.join(l)) #d_a_t_a 2022. 10. 20.
[SQL] CONCAT을 까먹다니.. 컬럼 데이터 합치는 방법 컬럼 데이터 합치기 예제 테이블 : hero_collection idx type name 1 1 안중근 2 1 윤봉길 3 2 김유신 4 2 이순신 5 3 이성계 6 3 왕건 7 4 반갑수 SELECT CONCAT(type, '::', name) as hero_name FROM hero_collection; 결과 hero_name 1::안중근 1::윤봉길 2::김유신 2::이순신 3::이성계 3::왕건 4::반갑수 활용 출처: https://extbrain.tistory.com/52 [확장형 뇌 저장소:티스토리] 님 감사합니다! 2022. 10. 15.
맨날 헷갈리는 정규표현식 (문자열에서 숫자만 추출) 모든 숫자들을 1개의 문자열로 추출 : re.sub() sub()는 string에서 pattern과 일치하는 문자들을 repl로 교체합니다. re.sub(pattern, repl, string) import re string = 'aaa1234, ^&*2233pp' numbers = re.sub(r'[^0-9]', '', string) print(numbers) output : 12342233 [^0-9] : 숫자가 아닌 것을 찾음 [0-9] : 숫자를 찾음 # 전화번호 *로 치환 예제 import re text = '''010-1234-5678 Kim 011-1234-5678 Lee 016-1234-5678 Han''' text_mod = re.sub('^[0-9]{3}-[0-9]{4}-[0-9]{4}.. 2022. 10. 15.