INTERSECT - 여러 개의 SQL문의 결과에 대한 교집합으로 중복된 행은 하나의 행으로 출력한다. GROUPING SET, CUBE, ROLLUP - 집계 유무 잘 파악하기UNION ALL(중복 있음), UNION(중복 없음) - 칼럼명이 다를 때 어떻게 되는 지 EXIST - 특정 컬럼값이 존재하는지 확인, IN 특정 값이 존재하는지 확인GRANT - 권한을 주는 거, REVOKE - 권한을 취소하는 거 GRANT SELECT ON A_User.TB_A TO B_userDROP [객체 유형] 객체이름객체유형 - TABLE, SCHEMA, DATABASE, INDEX ...RESTRICT 옵션: 기본 동작으로, 삭제 대상 객체가 의존성을 가지고 있으면 삭제를 차단합니다.REVOKE문을 사용하여 권..
분류 전체보기
DML : SELECT, INSERT, UPDATE, DELETE - (책에서는 SELECT는 DML로 분류)DDL : CREATE, ALTER, DROP, RENAMEDCL : GRANT, REVOKETCL : ROLLBACK, COMMIT NULL 값과의 연산은 NULL 값을 리턴, NULL 값과의 비교연산은 FALSENULL 값을 조건절에서 사용하는 경우는 IS NULL, IS NOT NULL을 사용해야 한다. 오라클에서는 '' - NULL로 인식, SQL server에서는 '' 로 인식 - 조회시 주의하기BETWEEN a AND b : a 와 b 값 (포함) 사이IN (list) : 리스트에 있는 값 중에서 어느 하나라도 일치하면 된다. CHR(10) - 줄바꿈1/24/60 = 1분, 1/24/..
모델링은 단지 시스템 구현만을 위해 수행하는 테스크가 아니며, 업무분석 및 업무형상화 하는 목적도 있다. 데이터 모델링 주의점 - 중복, 유연성, 비일관성(업무 변경에 의해 큰 변화가 생기면 안됨)외부스키마, 개념스키마, 내부스키마 - 통합적인 관점의 뷰 = 개념 스키마관계의 명칭은 관계 표현에서 매우 중요한 부분에 해당엔터티는 속성 2개이상, 인스턴스 2개 이상, 관계가 있어야 함, 반드시 업무 프로세스에 의해 이용되어야 함발생 시점에 따른 엔터티 분류 - 기본, 키 엔터티 / 중심 엔터티 / 행위 엔터티정규화제 1차 정규화 : 속성값이 여러개인거 분리해주기(원자값만 가지도록)제 2차 정규화 : 기본키에 종속적이지 않은거 분리해주기제 3차 정규화 : 이행적 종속 없애기 - 이행적 종속이란, 기본키 말고..
백트래킹 문제이다. 조건은 1. 교환 횟수를 다 쓰거나2. 이미 방문했던 노드이면 더이상 탐색하지 않는다. def dfs(cnt): global answer if cnt == c: answer = max(answer, int(''.join(map(str, lst)))) return for i in range(len(lst) - 1): for j in range(i + 1, len(lst)): lst[i], lst[j] = lst[j], lst[i] check = ''.join(lst) if (cnt, check) not in track: df..
^^ 약간 화난게 보이시나요? 문제 다 풀었는데 문제 풀이 IDE도 독특하고 주석에 설명이 엄청 많고 뭐가 뭔지 모르겠어서 삽질을 했기 때문입니다. SWEA에서는 testcase 갯수를 받고 그걸 반복문으로 돌리면서 검증하더라고요?함수 입력하고 테스트 케이스는 알아서 검사하는 다른 사이트와 다르게test하는 로직도 코드에 포함되어 있어서 헤맸습니다. T = int(input()) for test_case in range(1, T + 1): 이렇게 시작하는데 test의 txt 파일에 총 몇개의 테스트가 있는지 적혀있다면 그대로 두면 되는거 같고만약 문제에서 10문제다 이렇게 제한한다면T = 10 이렇게 두고 똑같이 푸시면 됩니다. ㅎㅎㅎ 앞으로 친해져야겠네요 SWEA~~ 화이팅.
우테코를 하면서 디버거를 사용했는데 정말정말 좋았다.지금까지 콘솔에다가 찍으면서 했던 게 삽질이었다는 것을 안 순간... 사실 수업시간에 디버거에 대해서 배웠으나 사용하지 않았다. 왜 그 랬 을 까.그냥 항상 콘솔에 찍어서 사용했는데. NOPE 그러지 말자. intellij에서 디버거를 사용 후 fn+f5 키를 누르면 다음 브레이크 포인트까지 진행되며변수 상황을 체크할 수 있다. Jetbrains IDE의 경우 TODO도 정리해서 보여준다. 아주 편리함.VScode의 경우 TODO tree extension을 다운받으면 된다.
·TIL
드디어 우테코 프리코스 4주간의 여정이 끝났다.4주동안 시험기간이기도 하고, 과제 제출도 해야하고, 여행도 잡혀있어서 정말 만만치 않았다. 하지만 도전해보길 정말 잘한거 같다. 일단 제대로된 코딩이라는 것을 해본 느낌이다. 각 과제의 요구사항이 점점 늘어나는 형태였는데,마지막에는 정말 요구사항이 많았다. 이 요구사항들을 README에 정리하고 계획하고 수행하는 능력을 기를 수 있었다.그리고 git commit 의 용도에 대해서 확실히 알았다. 마치 일을 하다가 어디까지 했는지 기록하는 용도이다.기록을 해둬야 문제가 생겼을 때도 다시 보기 쉬우므로, 알맞은 메세지로 명확하게 무슨 작업을 했는지 남겨야 한다. TDD(test driven development)부터 디버깅 툴로 디버깅도 할 수 있게 되었..
·TIL
계속 우테코 과제를 하다가class의 getter 에 this를 쓰지 않았는데도에러가 나지 않는 것이다. 뭐지? 원래 this 무조건 써야하는 거 아닌가,찾아보니 scope 와 관련된 내용이었다. 만약 this를 앞에 안적어 준다면그러니까 this.a 라고 적지 않고 a라고 적는 다면, 그 함수 내에 a라는 변수가 있을 경우 거기에 맵핑 된다.만약 없을 경우에는 클래스의 a로 맵핑되기 때문에 에러는 발생하지 않는다. this.a를 적어주면 클래스의 a와 맵핑되며,나의 경우에는 this를 적어주는 게 맞았다. 간단한 til 끝~~