프로그래밍 32

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; ..

2. do it! 02-1 기본 자료구조 (포인터, 배열, 난수(랜덤 수))- c언어

챕터 2에 들어가자 마자 배열을 설명하면서 배열의 크기 선언에 대해 설명하는데 중간중간에 내가 좀 어려워하는 포인터도 들어가서 하나하나 따라해보면서 이해해보려고 했다.. 했었으나.... 하핫 처음 코드부터 개같이 멸망 ㅎㅎㅎㅎㅎ 뭐라하는지 봤더니 호환되지 않는 유형 'void *'에서 'int *'에 할당됨 음음 코드에 대한 설명은 호출한 calloc 함수는 지정된(1 * sizeof(int) 바이트) 크기의 메모리를 힙 영역에 할당하고, 할당한 메모리의 첫번째 주소를 반환합니다. 할당한 메모리가 필요없어지면 포인터를 free 함수에 전달해 메모리를 해제합니다. 라고한다! 자료형이 int형이고, 요소 개수가 n인 배열 생성 calloc(n,sizeof(int)) 포인터(pointer)란? 객체(변수) 또..

파일 입출력 라이브러리

스트림(Stream)은 순서있는 데이터를 입력받거나 출력할 때 입출력 장치로부터 데이터가 한 쪽으로 흘러가는 것을 의미 버퍼(Buffer)는 장치와 프로그램 사이에 전송되는 데이터를 임시로 저장하는 메모리 공간 이 두개의 개념이 특히 버퍼의 개념이 뒤에서 설명하는게 너무 이해가 되지 않았다. 앞에선 gets()등을 사용할때 버퍼가 필요없다 라고 뚱 지나갔으면서 이제서야 버퍼에 대한 정의를 설명하다니 정말이지 이해할 수 가 없다. 이 챕터에서는 외부파일을 열거나 생성하고 거기에 텍스트를 입력하고 저장하는 등을 하는데, 이제까지 우리가 프로그래밍을 한다고 해서 숫자나 문자가지고 계산하는 프로그램만 만들었지 코딩을 배우기 전에 생각했던 GUI프로그램은 언제쯤 만들수 있을까 고민했던 것들을 조금 희석해 주었으나..