목록Categories (1103)
KoreanFoodie's Study
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/sPm9E/btriq7uODXA/BNgIm0xJh2SWVVpQ0KalwK/img.jpg)
이 글은 '김상형의 SQL 정복'의 예제 코드를 설명하는 방식으로 SQL 쿼리 예제를 소개하고 있습니다. SQL 기초 - 14. 테이블 관리 (테이블 수정, 필드 수정, SQL ALTER) 사실 테이블 컬럼 추가/삭제/변경 등의 작업은 GUI 도구를 사용해서 하는 것이 더 쉽다! 다만 스크립트 환경에서 ALTER 쿼리를 이용해야 하는 상황이 있을 수 있으니, 간단한 예제를 통해 어떤 쿼리가 있는지는 머릿속에 넣어두도록 하자. -- ADD를 통해 컬럼을 추가할 수 있다 ALTER TABLE tCity ADD mayor CHAR(12) NULL; UPDATE tCity SET mayor = '오륙도' WHERE name = '부산'; ALTER TABLE tCity ADD mayor CHAR(12) NOT ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bPey6x/btrioGQOBRf/EgacxzOhMTM8fRHSWpXk50/img.jpg)
이 글은 '김상형의 SQL 정복'의 예제 코드를 설명하는 방식으로 SQL 쿼리 예제를 소개하고 있습니다. SQL 기초 - 13. 분석과 통계(소계, 순위, 통계, 피봇) CREATE TABLE tMonthSale ( year INT, month INT, salesINT ); INSERT INTO tMonthSale VALUES(2021, 9, 3650); INSERT INTO tMonthSale VALUES(2021, 10, 4120); INSERT INTO tMonthSale VALUES(2021, 11, 5000); INSERT INTO tMonthSale VALUES(2021, 12, 4420); INSERT INTO tMonthSale VALUES(2022, 1, 3800); INSERT INTO..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/OrIxI/btrikMJ3klM/9DkA0Ute08cbGdU59Nl1o0/img.jpg)
이 글은 '김상형의 SQL 정복'의 예제 코드를 설명하는 방식으로 SQL 쿼리 예제를 소개하고 있습니다. SQL 기초 - 12. 뷰 (임시 테이블, CTE) SELECT member, age, addr FROM tMember; -- 간단한 VIEW를 생성하는 예제 -- VIEW는 쿼리문으로 생성하는 가상적인 테이블이다. -- 뷰의 데이터를 수정하면 실제 테이블에도 영향을 끼친다 -- 뷰는 보기 전용으로 이용하는 것이 바람직하다. CREATE VIEW vMember AS SELECT member, age, addr FROM tMember; SELECT * FROM vMember; SELECT member, age FROM vMember; SELECT * FROM vMember WHERE addr LIKE ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dbs3zd/btrh4MLFkBp/L2PcnpFYkAuceQB3tvQ2lk/img.jpg)
이 글은 '김상형의 SQL 정복'의 예제 코드를 설명하는 방식으로 SQL 쿼리 예제를 소개하고 있습니다. SQL 기초 - 11. 함수 (스칼라 함수, 문자열 함수, 데이터 타입, 날짜와 시간) 사실 DBMS마다 함수도 다르고 종류도 다르다. 그리고 모든 함수를 전부 외울 필요는 없다. 대략적으로 어떤 함수가 존재하는지를 파악해 둔 후, 필요한 함수를 그때 그때 찾아서 쓰는 방식이 더 효율적일 수도 있다! 이 글에서는 오라클을 기준으로 자주 나오는 함수 목록을 소개하며, 예시를 통해 설명한다. 수치함수 문자열 함수 데이터 타입 1. 수치형 2. 문자형 3. 날짜형 4. ANSI 표준 타입 -- AVG, TRIM, ROUND 등의 간단한 연산자는 직접 실습해보자. SELECT AVG(score) FROM t..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cUZPWY/btrh50aWAFq/jeowXMcOioU8i63IX4HfkK/img.jpg)
이 글은 '김상형의 SQL 정복'의 예제 코드를 설명하는 방식으로 SQL 쿼리 예제를 소개하고 있습니다. SQL 기초 - 10. 조인 (단순 조인, 외부 조인, 다중 조인 등 SQL 조인 예제) -- 실습을 위한 테이블들을 만들어 보자 CREATE TABLE tCar ( car VARCHAR(30) NOT NULL,-- 이름 capacity INT NOT NULL,-- 배기량 price INT NOT NULL,-- 가격 maker VARCHAR(30) NOT NULL-- 제조사 ); INSERT INTO tCar (car, capacity, price, maker) VALUES ('소나타', 2000, 2500, '현대'); INSERT INTO tCar (car, capacity, price, make..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/LUi7p/btrh8C1GHCv/Z4oCUvq0WDF32DXYkk59hk/img.jpg)
이 글은 '김상형의 SQL 정복'의 예제 코드를 설명하는 방식으로 SQL 쿼리 예제를 소개하고 있습니다. SQL 기초 - 9. 서브쿼리 (서브쿼리 연산자, 인라인 뷰, 테이블 조합, 테이블 병합) -- MAX 같은 연산자는 집계 연산자라고도 한다. SELECT MAX(popu), name FROM tCity; SELECT name FROM tCity WHERE popu = MAX(popu); SELECT MAX(popu) FROM tCity; SELECT name FROM tCity WHERE popu = 974; SELECT name FROM tCity WHERE popu = (SELECT MAX(popu) FROM tCity); SELECT MAX(num) FROM tItem; SELECT item ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/KE9L5/btrhVtkdzux/CcrkGioD50bXyCQrynYoq1/img.jpg)
옛날 옛적, 자기계발서를 좋아하던 한 아이가 살았답니다. 흔히 '충'이라는 글자가 붙는 단어는 좋은 뜻으로 쓰이지 않는다곤 하지만, 사실 나는 가성비충이다. 때론 징그러울 정도로. 그래서 그런지 몰라도, 어렸을 적부터 자기계발서와 명언집을 좋아했다. 왜냐하면 명언은 압축적이기 때문이다. 대략적으로 소설 -> 에세이 -> 기술서적/자기계발서 -> 동기부여 영상 -> 명언 순으로 함축성이 올라간다. 어떻게 표현하는지와 어떻게 전달력을 높이는지의 차이가 있을 뿐, 핵심 메시지는 간단하고 비슷한 경우가 많다. 그러니 쓸데없이 시간을 쏟아부어 같은 내용을 파악하기보다, 짧은 한 줄의 문구로 삶의 지혜를 얻어가는게 낫지 않은가. 그런 생각을 하며 때론 명언집과 잠언집을 필사하기도 했다. 그런 싸구려 책을 읽지 말고..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/6NPHv/btrhWJawWsk/zgAqHNCJdtegTN7Q4ucXp1/img.png)
윈도우 API 프로그래밍 10 : 백버퍼와 픽 메시지 백 버퍼는 화면에 그려지는 버퍼에 바로 렌더를 살 경우 버퍼가 지워지는 순간 또는 버퍼에 전체가 다 그려지기 전에 화면에 그려지기 전에 화면에 그려질 경우 덜 그려진 부분이 화면에서 잠깐 지워진 상태가 되기 때문에 깜빡이는 것처럼 보이는 현상이 생긴다. 이때, 백 버퍼를 생성하여 백 버퍼에 모든 내용을 그리고 백 버퍼를 화면에 렌더하는 방식으로 위의 문제를 해결할 수 있다. 백퍼퍼와 픽 메시지 기존에는 WM_TIMER를 이용하여 업데이트를 처리했지만 이는 모든 메시지 중에서 우선 순위가 가장 낮고 최대 속도가 0.01초이다. 이를 극복하고 cpu 성능을 제대로 활용하기 위해 픽 메시지를 사용한다! HDC hdc = GetDC(g_hWnd); g_hDC..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/D2A36/btrhVZdzlYg/pZxpbjojMmXkW1Q6ezZ0ek/img.png)
윈도우 API 프로그래밍 9 : 키매니저(키 입력 받기), bitset 예제 이번 글에서는 싱글톤 패턴을 이용해서 키 입력을 받는 방법과 간단한 bitset 메소드를 이용해 보겠다. SingletonBase.h 먼저, 싱글톤 클래스를 이용할 템플릿 클래스인 SingletonBase.h를 정의해 보았다. #pragma once /* 싱글톤 패턴 : 단일 객체 관리 방법 - 인스턴스를 호출 시 처음 호출 하는 경우 인스턴스를 생성하고 생성 된 인스턴스를 반환 한다. - 인스턴스를 호출 시 이전에 호출되어 생성이 되어 있는 경우 그 생성 되어 있는 인스턴스를 반환 한다. 템플릿(Template, 형판) : 함수 또는 클래스를 만들어 내기 위한 틀 - 정해지지 않은 자료형에 대한 선언을 템플릿을 사용하여 하고 ..