Help us understand the problem. What is going on with this article?

バッチでpostgreDBからデータ抽出を行う

バッチでpostgresDBに接続してデータ抽出を行う。
実行ファイルはedb-psql.exeを用いる。

実行環境

windows server 2008 R2 Standard
psqledit_4.0.4.1

バッチ構成

D:
 |--¥#Batch開発
       |
       |--bat
       |   |--テストpos.bat
       | 
       |--sql
           |--テストpos.sql

テストpos.bat

テストpos.bat
@echo off
SET PGPASSWORD=testpass
SET PGUSER=usr_test
SET PGPORT=5432
SET PGHOST=10.xx.xx.xx
SET PGDATABASE=db_tsna

clip < ¥encoding SJIS

echo #############################
echo ## postgresに接続
echo #############################

D:¥db¥PostgreDB¥migrationstudio¥edb-psql.exe -f "D¥#Batch開発¥sql¥テストpos.sql"

使用するのはpsql.exeではなくedb-psql.exeです。

テストpos.sql

テストpos.sql
¥o PAR_DATA.txt

select 一連番号,更新年月日,sum(金額)
from table_TEST
where 更新年月日 < '20190301' and 更新年月日 > '20190131'
group by 一連番号,更新年月日
order by sum(金額) desc;

¥q

補足説明

先頭に¥o [ファイル名].[拡張子]を記述すると、postgreでファイル出力ができます。
セットとして最後尾に¥qを書いて、勝手に終了するようにします。
sqlスクリプトの保存は文字コードがUTF8、改行コードはLFにしないとうまくSQL文を読み取ってもらえません。
この時、出力ファイル名が日本語の場合は文字化けしてしまうので、今回は英語にしています。
出力ファイル名を変更したい場合は、テストpos.batの中にリネーム(ren)コマンドを付け加えることで対応できます。(コードは模索中です)

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away