Author: byun1114

  • 엑셀 소수점 자리 고정

    엑셀에서도 소수점 자리를 고정해서 출력해야 할 경우가 있다. 이럴 경우 FIXED를 이용한다.

    =FIXED(0, 3)
    0.000
  • 모두를 위한 PostgreSQL

    CDM이 담겨 있는 PostgreSQL을 제대로 알아보기 위하여 도서관에서 책을 빌렸다. 전반적으로 훑어보았는데, 이 책은 표지에 쓰여 있듯이 누구나 이해할 수 있는에 맞추어 내용이 구성되어 있었다.

    내가 이용해 볼 수 있을 것 같은 부분만 골라서 기록해 둔다.

    BETWEEN

    a >= 1 and a <= 10 은 BETWEEN 1 and 10 으로 이용할 수 있다.

    CASE WHEN THEN ELSE END. 쉽게 말해 ifelse를 사용할 경우에 이용한다.

    CASE
     WHEN 조건1 THEN 결과1
     WHEN 조건2 THEN 결과2
     ELSE 결과3
    END

    SIMILAR TO는 표준 SQL을 따르며, POSIX 메타 문자(|, *, +, ?)를 이용할 수 있다.
    LIKE는 %(문자열), _(문자 한 글자) 형식으로 이용할 수 있으며, ILIKE는 대소문자 구별이 없다.
    LIKE는 ~~, NOT LIKE는 !~~, ILIKE는 ~~*, NOT ILIKE는 !~~*로 이용할 수 있다.

    WHERE은 조건 집계 전에 적용하고, HAVING은 조건 집계 후에 이용한다.

    우선 순위가 있으며, 높은 우선 순위 순서대로 다음과 같다.
    FROM, WHERE, GROUP BY, HAVING, SELECT, DISTINCT, ORDER BY, LIMIT

    UNION, INTERSECT, EXCEPT도 괜찮지만, 중복을 제거하지 않고, 일단 모아도 된다면 UNION ALL, INTERSECT ALL, EXCEPT ALL를 이용하는 것이 속도가 빠르다.

    함수와 트리거를 이용해보자.

  • apt-cacher-ng

    사용하는 리눅스 컴퓨터가 1~2대이면 업데이트를 위한 캐시 혹은 로컬 미러 서버의 존재가 필요없다. 리눅스 컴퓨터 숫자가 많아진다면 다운로드 받는 시간이 조금 아까워지기 시작한다.

    로컬 미러 서버를 알아보고 시도도 해보고 그랬는데 전체를 다운받는 개념이라서 캐시 서버 형식의 프로그램을 알아보았다. 그 중에 하나인 apt-cacher-ng를 사용해 보고 있다.

    설치는 다음과 같이 한다.

    sudo apt install apt-cacher-ng

    설정 파일 위치는 /etc/apt-cacher-ng/acng.conf 이다. 굳이 바꿀 것은 없다.

    설치 후에는 apt로 패키지를 설치할 때 apt-cacher-ng가 설치된 컴퓨터를 바라보도록 설정을 변경해야 한다. 홈페이지에서는 2가지 방법을 제시하고 있다.

    • HTTP Proxy를 이용하는 방법
    • sources.list 파일의 deb 수정

    Proxy가 익숙하지 않아서 2번째로 먼저 시도 했는데, 그보다는 Proxy 방법이 하나만 설정을 변경하면 되기 때문에 몹시 편하다. Proxy 방법은 2가지 방법 중 하나를 선택해서 하면 되고, 나는 /etc/apt/apt.conf 파일을 생성하는 방법을 선택했다.

    /etc/apt/apt.conf
    Acquire::http::Proxy "http://서버IP주소:3142";

    HTTPS를 이용하는 경우라면 설정이 더 있으니 메뉴얼이나 구글 검색을 해보도록 한다.

    HOWTOs and FAQ (uni-kl.de)

  • 햄릿, 최종철 옮김

    안 읽어 본 사람은 많을지라도, 제목은 못 들어본 사람은 없을 셰익스피어의 작품 중 하나인 ‘햄릿’을 읽어 보았다.

    이 책의 단점을 하나 짚고 넘어가자면 각주가 있는데, 작품 해석에 도움을 주기도 하지만, 그렇지 않은 부분도 있다는 것이다.

    앞 부분에서 읽어보지 말았어야 할 각주를 하나 골라보면, 햄릿의 아버지지는 고해성사를 받지 못하고 죽었기 때문에 유령 같은 존재가 되어 성을 배회한다는 것이다. 이 각주를 보지 않았다면 복수극으로 넘어갈 수 있는 재미있는 주제가 졸지에 기독교 문화로 바뀌고 복수극의 강도가 약해진 것 같다.

    줄거리는 모든 사람이 다 알고 있을 내용이니 내 감상을 좀 적어보겠다.

    • 햄릿은 아버지의 복수를 하는 과정에서 예비 장인어른을 죽였다. 그로 인하여 결혼할 뻔한 사이인 오필리어 죽음에 원인을 제공하였다. 결투 과정에서 예비 동서도 독이 묻은 칼로 상처를 입힘으로써 죽게 만들었다. 편지를 위조하여 배신한 친구들을 죽게 만들었다. 아버지를 죽게 만든 현재 왕인 아버지의 동생도 죽였다. 독이 든 잔을 마시고 어머니가 죽게 만들었다. 그리고 자기 자신도 독이 묻은 칼에 의한 상처로 인하여 죽는다. 이렇게 다 죽은 다음에 덴마크 왕위는 노르웨이 왕자에게 넘어간다.
    • 로미오와 줄리엣은 두 가문의 화해라는 결말이 있는 반면, 햄릿에서는 모든 사람이 다 죽어 버려서 끝나게 된다.
    • 복수가 이 책을 관통하는 주제인지 의문이 든다. 아버지의 살해와 어머니의 변절(?)로 충격받아 실성한 아들의 살인극이라고 해도 될 것 같다. 미친 햄릿의 이야기라고 한다면, 노르웨이 왕자의 존재가 오히려 합당하게 느껴진다.

    이 책을 읽으면서 알게된 사실인데, 햄릿은 여러 판본이 있다고 한다. 의사 국시나 전문의 시험 복원을 위하여 참여 인원들이 문제를 외워서 유출하였듯이 연극에 참여한 인물이 해당 내용을 유출한게 아닌가하는 부분이 있다고 한다.

    To be, or not to be에 대한 무수히 많은 해석이 존재하는 한, 사람들이 저마다의 생각을 할 수 있는 한, 이 책은 사람들 사이에서 살아남을 것이다.