본문 바로가기

프로그래밍 언어

[DB] WITH 문 (가상 테이블) 준비된 테이블, 데이터 (TMP_A, TMP_B)SELECT * FROM TMP_A; M1A2C SELECT * FROM TMP_B; M1B2D3A WITH 문으로 쿼리를 묶어 가상테이블을 만든 후간단히 사용 가능 예제  1)WITH TABLE_INNER AS (SELECT * FROM TMP_A AINNER JOIN TMP_B BON (A.M = B.M))SELECT * FROM TABLE_INNER; MM_11AA 예제  2)WITH TABLE_INNER AS (SELECT * FROM TMP_A ALEFT OUTER JOIN TMP_B BON (A.M = B.M.. 더보기
[DB] ORACLE JOIN, ANSI JOIN 가상 테이블 TABLE_A, TABLE_B WITH TABLE_A AS ( SELECT 'A' AS "M" FROM DUAL UNION ALL SELECT 'B' AS "M" FROM DUAL UNION ALL SELECT 'C' AS "M" FROM DUAL ), TABLE_B AS ( SELECT 'A' AS "M" FROM DUAL UNION ALL SELECT 'B' AS "M" FROM DUAL UNION ALL SELECT 'D' AS "M" FROM DUAL ) TABLE_A M 1 A 2 B 3 C TABLE_B M 1 A 2 B 3 D INNER JOIN [ORACLE] INNER JOIN -- [ORACLE] INNER JOIN SELECT * FROM TABLE_A A, TABLE_B.. 더보기
[C] C struct timeval 헤더파일 설명 - struct timeval은 bit/time.h 헤더파일에 정의 되어있다. - bit/time.h 헤더파일은 sys/time.h 헤더파일에 선언되어 있다. 형식 strcut timeval { __time_t tv_sec; /* Seconds. */ __suseconds_t tv_usec; /* Microseconds. */ } 예제 #include #include #include int main(void){ struct timeval tv; struct tm *ptm; gettimeofday(&tv, NULL); ptm = localtime(&tv.tv_sec); printf("%d.%d\n", tv.tv_sec, tv.tv_usec); printf("%d05d-%02d-%02d %d0.. 더보기
[Java script] setInterval(), clearInterval() 응용 ID of setInterval = setInterval('function', time); - function을 time 간격으로 자동 실행. clearInterval(ID of setInterval); - setInterval된 function을 중지. ----------------------------------------------------------------------------------------------------- none 더보기
[Python] 이진파일과 텍스트파일 구분 이진 파일과 텍스트 파일을 구분하여 처리하는 운영체제라면(MS Windows) 이진파일을 다루기 위해서는 b를 사용해야한다.하지만 Unix계열 운영체제들은 모든 파일을 이진파일로 다루므로 b플래그를 사용 할 필요는 없다. 하지만, 플랫폼에 의존하지 않는 코드를 작성하려면 이진 파일을 다룰 때 b플래그를 사용 하는 것이 좋습니다. python open() 함수 사용시 mode 참고 사항.windows default mode t(텍스트 모드)Unix게열 default mode b(바이너리 모드) 더보기
[java script] window.open(url,name, opction) Location. search : window.Location.search 의 값은 url 중에서 ? 를 포함하여 그 이하의 name=value를 포함한다. . href : Location 객체의 toString() 메소드는 href 값을 반환하므로 Location.href 대신 Location 을 쓴다. . protocol . host . pathname . hash 두번째인자인 name접근 방법. 오픈되어진 자식창에서 name으로 접근 하면 된다. 더보기
[C] bind()함수를 제외 시킬 수 있는 경우 sendto()를 사용 하다보니 bind()를 사용하지 않아도 된다는 것을 알게 됐습니다. 그래서 sendto()와 bind()를 찾아보다 아래와 같은 좋은 글을 찾았습니다. 출처 : https://kldp.org/node/136920 질문 작성자 : asura327UDP C/S socket 을 만들다 문득 궁금해서 여쭈어봅니다.서버에서는 bind를 하는데 클라이언트에서는 bind를 하지 않는데 이러한 일련의 프로세스들이 어떻게 돌아가는 것인가요? 답변 작성자 : chadr서버에서도 bind 안해도 됩니다. 항상 그러는 것은 아니고 bind의 목적이 무엇인지 생각해봐야합니다.socket에 bind를 한다는 것은 socket에 address와 port를 연결 시킨다는 의미입니다.즉... 외부에서 패킷이 들.. 더보기
[C] const 포인터 int ab=2;int cc=3; const int *a=&ab; //주소 변경 가능, 변수값 변경 불가능//const *int b=&ab //문법 오류 int *const b=&ab; //주소가 변경 불가능, 변수값 변경 가능 int const *c=&ab; //주소 변경 가능, 변수값 변경 불가능 a=&cc;//*a=3; error //b=&cc; error*b=3; c=&cc;//*c=4; error 더보기
[C] 배열 초기화 방법 int main(void) { char a[10]={0}; char b=0; int n; printf("start - %d - %c\n",b,b); if(b == '\0') printf("ture\n\n"); for(n=0 ; nre> NULL선언 char a[3]={0}; char a[3]={0,0,0}; char a[3]; a[0]='\0'; a[1]='\0'; a[2]='\0'; 더보기
[C] __attribute__((packed)); 사용 하는 이유 일단 간한하게 소스와 결과로 확인해 보겠습니다. 예제 소스 )#include struct AA{int a;char b;}__attribute__((packed));struct BB{int a;char b;}; int main(void){printf("AA-Size : %d\n",sizeof(struct AA));printf("BB-Size : %d\n",sizeof(struct BB));return 0;} 실행AA-Size : 5BB-Size : 8 위의 결과만 봐도 예측이 가능하다.packed는 메모리에 빈칸 없이 채우라는 소리이다.int는 4바이트 char는 1바이트인데, 32비트 환경에서는 단위를 4바이트씩 잡기 때문에 char를 선언해도 4바이트를 잡게 된다.이때 메모리 낭비가 생겨 __attri.. 더보기