본문 바로가기

CS22

[Mysql] rownum 활용 Mysql은 Oracle과는 다르게 rownum을 지원하지 않아서 커스텀으로 만들어서 사용해줘야 한다. 함수를 사용하여 rownum을 지정해줄 수도 있다. 커스텀 rownum 함수 row_number() 커스텀 rownum select @rownum:= @rownum + 1 as rownum, t.* from table1 t, (select @rownum := 0) r; select rt.* from ( select @rownum:= @rownum +1 as rownum, t.* from table1 as t, (select @rownum := 0) as r ) as rt where rt.rownum between 2 and 4; select rt.* from ( select @rownum:= @rown.. 2022. 7. 20.
코딩테스트 자료구조, 알고리즘 정리 알아야 할 개념 시간복잡도, 공간 복잡도 알아야 할 자료구조 배열, 연결 리스트, 스택, 큐, 덱, 힙, 트리, 해시, 그래프 알아야 할 알고리즘 정렬, 구현, 재귀, 그리디, 탐색(+DFS/BFS, 백트래킹, 이분 탐색), 다이내믹 프로그래밍, 그래프 알고리즘 알고리즘 배열 문제 Array, LinkedList Sliding window Two Pointer 1차원 BFS/DFS 구현 재귀 Back Tracking Union-Find Divide and Conquer 그리디 정렬 기본 정렬 문제 Merge Sort Quick Sort 탐색 DFS/BFS Back Tracking 이분 탐색 Binaray Search Parametric Search 다이내믹 프로그래밍 기본 DP 2차원 DP 최장 증가 부.. 2022. 6. 16.
[데이터베이스] 무결성 제약 조건 도메인 무결성 제약조건 각 속성의 도메인에 지정된 값만을 가져야 한다는 조건이다. ex) 주문 일자 속성 -> 날짜 값만을 가져야 함 개체 무결성 제약조건 기본키는 NULL이면 안되며, 유일해야 한다. 참조 무결성 제약조건 부모 릴레이션에서 튜플을 삭제할 경우 RESTRICTED : 자식에서 참조하고 있다면 삭제를 거부 CASCADE : 자식의 튜플까지 삭제 DEFAULT : 자식의 외래 키 값을 DEFAULT 값으로 변경 NULL : 자식의 외래키 값을 NULL로 변경 2022. 6. 15.
[데이터 베이스] 제 4 정규형, 제 5 정규형 제4 정규형 1 대 N 다치 종속의 제거이다. 하나의 결정자가 다른 속성에서 여러 종속자를 결정할 때 다치 종속한다고 한다. 한 릴레이션에서 1 대 N으로 관계가 나타나도 되지만, 문제가 되는 부분은 1 : N, 1: N 두 개 이상으로 다치 종속이 구성되어있을 때 이상현상이 발생하므로 중심이 되는 속성을 기준으로 릴레이션을 분리해주어야 한다. 이름 과목 동아리 홍길동 데이터베이스 농구 홍길동 보안 축구 홍길동 데이터베이스 야구 해당 테이블에서 과목을 추가하게 되면, 동아리도 추가를 해줘야 하는 문제가 발생한다. 그러므로 이름, 과목 / 이름, 동아리로 분리해줘야 한다. 제 5 정규형 조인 종속성이 존재하면 제5 정규형 대상이다. 조인 종속성이란 마치 조인을 한 것과 같은 릴레이션의 중복을 제거해주는 것.. 2022. 6. 13.
[알고리즘] Binary Search 이분탐색 - JAVA BinarySearch를 사용하면 검색 범위를 logN으로 엄청나게 단축시킬 수 있다. 만약 탐색할 범위가 너무 크다면 고려해봐야 한다. 특히 응용이라고 할 수 있는 최댓값, 최솟값을 찾아야 하는 이분 탐색을 이용하는 매개 변수 탐색 Parametric Search는 굉장히 유용하다. 주의할 점은 이분 탐색을 사용하기 이전에 탐색할 배열은 무조건 정렬되어있어야 한다. 이분 탐색은 기준 값과 가변 값을 통해 Start와 End를 결정한다. package Search.BinarySearch; public class BinarySearchTest { static int[] arr; public static void main(String[] args) { arr = new int[]{1,3,5,7,9,11,13.. 2022. 6. 9.
[Database] MYSQL SQL 총정리 문자열 함수 문자열 함수에서 인자가 여러 개일 때 적용대상 @column 위치는 거의 맨 앞이다. concat select concat(@column, " ", @column) from books; concat_ws select concat("구분자", @column, @column) from books; substr substring substring(@column, start, end) 앞 ~ 뒤 [모두 포함] substring(@column, start) 앞부터 count substring(@column, -start) 뒤부터 count replace replace(@column, "바뀌기 전 문자", "바뀐 후 문자") reverse reverse(@column) char_length char_l.. 2022. 5. 3.