본문 바로가기

postgres4

자동로그인, Postgresql : .pgpass 파일 1. 개요 : postgres를 command line에서 로그인을 하려면 "$ psql -U사용자명 -d DB명" 이런식으로 입력하고, 바로 패스워드를 묻고 입력하면 로그인이 된다. 그러나 shell script 등에서 이용하려면 pw 입력때문에 사용하기가 불편해진다. 이럴때에 자동으로 로그인을 할 수 있도록 하는 방법이 .pgpass 파일을 이용하는 것이다. 2. 생성 : 아래와 같이 파일을 생성해준다. $ touch ~/.pgpass $ chmod 0600 ~/.pgpass 3. 편집 : server:port:database:username:password 의 순서대로 내용을 채워주면 된다. (예를 들면) localhost:5432:bookmarks:milosz:JOAvaDtW8SRZ2w7S 10... 2020. 2. 17.
PostgreSQL : Windows Function (윈도우함수 정리) Windows Function을 사용하면 group by를 사용하지 않고도 SQL의 aggregate 함수를 사용할 수 있다. -- 원래 데이터 SELECT country, month, goalamount FROM TARGET order by month, country TARGET 이라는 테이블에 아래와 같이 국가별, 월별 목표금액이 있는 테이블이 있다고 가정을 하고... * 편의상 모든 결과는 20 row 까지만 캡춰를 하였습니다. 1. 집계 함수 -- 집계 함수 SELECT country, month, goalamount , avg(goalamount) over() as avg_amount , avg(goalamount) over(partition by month) as avg_month FROM T.. 2019. 9. 18.
PostgreSQL : psql 명령어 정리 Postgres의 command line 인터페이스인 psql 에서 사용하는 명령어를 정리해본다. ● 사용자 조회 # \du ● 데이터베이스 조회 # \l ● 데이터베이스 접속 (변경) # \c db_name ● 스키마 조회 # \dn ● 스키마 접속 (변경) # set search_path to schema_name; ● 테이블 조회 # \dt ● function 조회 # \df 2019. 9. 6.
PostgreSQL : generate series of date (일련의 날짜 만들기) PostgreSQL에서는 generate_series 라는 함수를 이용하면 일련의 숫자를 만들 수 있다. select generate_series(0, 364) as idx 위의 커리문장은 0부터 364까지의 숫자 레코드셋을 만들어준다. 여기서 응용을 하면 날짜의 덧셈과 cross join 기능을 이용하면 날짜 series를 만들 수 있다. select a.date + b.idx as date from ( select '2019-01-01'::date as date ) a cross join ( select generate_series(0, 364) as idx ) b 2019-01-01 2019-01-02 2019-01-03 2019-01-04 2019-01-05 2019-01-06 2019-01-07.. 2019. 9. 6.