전체 글 57

귀여운 우리 물고기(구피)

동물을 키우고 싶다는 나의 말에 엄마가 상의도 없이 지인에게서 데려온 새끼구피들. 한마리는 먼저 가고 구피들 새끼낳는건 감당 못할꺼같아서 암수 구분한뒤에 2마리 뿐이었던 암구피들은 다른데 보내고 남은 구피들만 데리고 산지 어엇 6개월차 그중 한마리가 언젠가부터 바닥이나 풀잎 위에서 쉬는걸 좋아한다. 처음엔 안그랬는데 어느순간부터 편했는지 계속 바닥이나 풀에 걸쳐있으려고만 한다. 보통 바닥에 있는 구피는 수명이 다해 힘이 없는거라고 해서 잠시 걱정을 했지만 힘이 없는것치고 배도 나와있고 밥도 잘 먹는다. 구피 귀여웡 이상 귀여운 우리 구피이야기를 마치겠다

일상다반사 2022.08.28

8. 2과목 제 2장 SQL 활용 (3) - 서브쿼리 Subqauery, 윈도우 함수

서브 쿼리 - 쿼리안에 있는 또 다른 쿼리 스칼라 서브쿼리 (Scalar Subaquery) - (주로 SELECT절에 사용) 한 행, 한 칼럼만을 반환하는 서브쿼리, 하나의 칼럼처럼 사용 됨 SELECT ..., (SELECT COUNT(*) FROM 부양가족 Y WHERE Y.사원번호 = B.사원번호) AS 부양가족수 //칼럼을 다른 테이블에서 가져올 때 등등 사용 FROM ..., 뭔지 감 못잡다가 정미나님 영상으로 이해됨 뷰 - DB의 SELECT 문을 저장한 OBJECT, 쿼리문에서 테이블처럼 쓰임 테이블은 실제 데이터로 가지고 있는 반면 뷰는 실제 데이터를 가지고 있지 않다. 가상 테이블이라고도 함 //아래의 인라인 뷰의 테이블과 같이 임의로 만든 가상 테이블 -> 뷰 사용의 장점 독립성 - ..

7. 2과목 제 2장 SQL 활용 (2) - 계층형 데이터

계층형 데이터란 동일 테이블에 계층적으로 상위와 하위 데이터가 포함된 데이터를 말한다. 예를들어, 사원 테이블에서는 사원들 사이에 상위 사원(관리자)과 하위 사원 관계가 존재하고 조직 테이블에서는 조직들 사이에 상위 조직과 하위 조직 관계가 존재한다. 계층형 질의 테이블에 계층형 데이터가 존재하는 경우 데이터를 조회하기 위한 구문 START WITH - 계층 구조 전개의 시작 위치 지정 CONNECT BY - 다음에 전개될 자식 데이터 지정, 부모&자식의 관계 지정 ㄴ PRIOR - 현재 읽은 칼럼을 지정한다. PRIOR 자식 = 부모 형태를 사용하면 계층구조에서 부모 데이터에서 자식 데이터 (부모 -> 자식)방향으로 전개하는 순방향 전개를 한다. PRIOR 부모 = 자식 (자식 -> 부모)방향으로 전개..

6. 2과목 제 2장 SQL 활용 (1) - alias

분명 저번 포스팅에선 어..? 생각보다 할만한데?를 느꼈었던 반면, SQL 활용편에 들어가지마자 뭔가가 단단히 잘못되었다는것을 느꼈다. SQL 기본편 오답노트를 끝내고 시간이 약 1시간가량 남아 한번 찍먹이라도 해보자 해서 바로 활용편을 들어봤으나 설명을 너무 잘하신다고 생각했던 전광절님은 설명을 어렵게 하시는 분으로 마음속 평가가 떡락해버렸고 어디서부터 어떻게 건들여야 할지 전혀 모르겠어서 진짜 이번에 따는걸 포기해야하나라는 생각밖에 안들었다. 그래도 일단 되든안되든 마쳐보자라는 생각에 꾸역꾸역 문제풀이를 듣고 그 유명하신 정미나님의 풀이까지 듣고서야 아 이런식으로 되는거구나 하고 이해가 조금씩 되었다. 물론 모든걸 하나하나 짚으면서 넘어가진 않았고 이번주 그니까 오늘, 내일로 기준 가이드? 외워야 할..

5. 2과목 제 1장 SQL 기본 (3) 43~64

어제 문제 풀고 이해하고 정리하는데 아무리 2주라는 시간이 있어도 그렇지 기한안에 이게 가능한가 싶었지만 오늘 정신차리고 다시 정리해보니 괜찮은거같다가도 미래는 아직 아무도 모른다! SQL 문장 표현 SEARCHED_CASE_EXPRESSION ㄴCASE WHEN LOC = 'NEW YORK' THEN 'EAST' when 이 앞에오고 ' = '가 있음 SIMPLE_CASE_EXPRESSION ㄴCASE LOC WHEN 'NEW YORK' THEN 'EAST' when이 뒤에오고 ' = '가 없음 이해하는데 살짝 애를 먹었던 222 COALESCE 함수의 핵심이니 잘 기억해두도록 하자 이제까지 했던것처럼 그냥 글로 설명해보려고 했으나 설명이 너무 복잡해져서 교재 첨부 SELECT COUNT(컬럼) => ..

4. 2과목 제 1장 SQL 기본 (2) 20~42

SQLD 준비 글들은 모두 SQL 자격검정 실전문제를 풀며 정리한 내용이므로 최대한 정리해보려고는 하지만 대체적으로 단원 등이 맞지 않을 수 있음에 유의! 생각보다 양이 방대해 이게 될까 싶지만 한번 시도는 해 보자규요!! #대문자로 쓴 건 형식, 소문자는 테이블이나 칼럼에 따라 바뀔 수 있음을 표시. INSERT INTO table_name VALUES (1, 100) 이 SQL문이 틀린 이유는 테이블에 있는 칼럼이 3개인데 2개만 풀면서 어느 칼럼인지 표시하지 않았기 때문이다. 답이 되려면 INSERT INTO table_name (id, amt) VALUES (1, 100) 로 작성해야 한다. 이때 모든 칼럼을 다 작성하였을 때, 위와 같이 작성하지 않아도 됨 *칼럼들 중 NOT NULL인 칼럼은 ..

3. 2과목 제 1장 SQL 기본 (1), 알아야 할게 너무 많다ㅠ

최대한 인터넷에 떠도는 요점정리나 SQL 개발자 스터디 교재로 이해한다음에 SQL 자격검정 실전문제를 풀어보려고 했는데, 일단 되든 안되든 가벼운 마음으로 풀어봤더니 64개 중에서 21개 맞혔다ㅋㅋㅋ 다른 유튜브 강의들은 너무 길고 메모하면서 듣는다해도 시간만 날릴꺼같아서 일단 풀어봤는데 해도 너무한다 진짜 ㅋㅋㅋㅋㅋ 2과목에도 1과목때 했던 것처럼 모르는 것들은 정답해설을 보면서 해보려했으나 이번과목에서부턴 어림도없었고 이걸 어떻게 해야하나 이곳저곳 찾아다니던 끝에 전광철님의 노랭이 문제풀이를 보게됐는데 분명 1과목풀때도 이해못하겠는 유형이 있었을때도 몇번 찾아보게 됐지만 봐도 전혀 이해못했었는데 설명이 좋아지신건지 2과목부턴 이해가 너무 잘됐다. 그리 어려운 시험이 아니기때문에 요점정리만 봐도 충분하..

2. 1 과목 제 2장 데이터 모델과 성능

큰일이다 분명 여유를 두고 준비하려고 했으나 어느덧 시험 2주전이다. 성능데이터모델링이란? 설계단계의 데이터 모델링 때무터 성능과 관려노딘 사항이 데이터 모델링에 반영될 수 있도록 하는 것이다. -정규화 중복을 최소화 하도록 설계된 DB -반정규화(비정규화) 읽는 시간을 최적화 하도록 설계된 DB -트랜젝션 DB 상태를 변환 시키기 위해 수행하는 작업단위 ex)sql 질의어를 통해 DB에 접근 -칼럼 관계형 DB테이블에서 특정한 단순 자료형의 일련의 데이터 값과 테이블에서의 각 열을 의미 -파티셔닝 논리적으로는 하나의 테이블이지만 물리적으로는 여러 개의 테이블로 분리하여 데이터 액세스 성능도 향상시키고, 데이터 관리방법도 개 선할 수 있도록 테이블에 적용하는 기법 함수종속이란? (many to one) ..

4. do it! 03-1 검색 (선형, 이진) ,복잡도 - C언어

최근 교재 두개를 가지고 공부하다보니 공부할때 겹쳐지는 챕터는 두 교재 모두 다른 방식으로 설명하기 때문에 더 이해가 되서 좋다. 용도나 목적, 실행 속도, 자료구조 등을 고려하여 알고리즘을 선택해야 합니다. 선형 검색 (순차 검색) 무작위로 늘어놓은 데이터 모임에서 검색을 수행합니다. 원하는 키 값을 갖는 요소를 만날 때까지 맨 앞부터 순서대로 요소를 검색 ex) a[0] 과 원하는 키 비교 -> 틀림 -> a[1]과 키 비교 -> 틀림 -> a[3]과 비교 이때 종료조건이 1. 배열이 끝을 지나간 경우 2. 검색할 값과 같은 요소를 발견 한 경우 이렇게 두가지를 가지게 되는데 이 종료조건을 검사하는 비용도 만만치 않기 때문에 이를 해결하는 방법으로 보초법(sentonel method)이 있다. 보초법..

응용 프로그램 작성 (배열 차순 정렬) -c언어

와! 버블정렬! 어제 오름&내일차순 정렬 배우는줄알고 좋아했다가 알고보니 그냥 정렬 순서만 역순으로 바꾸는 법이었는데, 오늘에서야 비로소 오름차순 정렬을 배운다!!! 순서를 결정하는 정렬중 가장 널리 알려진 정렬 알고리즘은 버블 정렬(Bubble Sort)이 있다. 이 정렬방법은 이웃 자료들을 비교하여 순서 바뀐 원소를 교환하는 방법이다. #include #include void bubble(char *, int); int main(){ char str[80]; gets(str); bubble(str, strlen(str)); printf("재정렬한 결과 %s", str); } void bubble(char *item, int count){ int pass =0; int change =1; int j; ..