忍者ブログ
まにょのITメモ
[1]  [2
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

SQL> set echo off          コンソールメッセージ非表示(デフォルトはOFF)
SQL> set linesize 1000     1行のサイズを設定(1レコードの表示が1行に収まるように調節する)
SQL> set pagesize 0        ページ区切りをなくす(ページ間のセパレータが無くなる)
SQL> set trimspool on      行末のスペースを削除
SQL> set colsep ','        項目区切り文字を設定
SQL> spool c:\work.csv     出力先ファイルを指定「c:\work.csv」
SQL> select * from SAMPLE_TABLE     出力対象のデータをselectし、取得結果をスプールする
SQL> spool off             スプールを終了しファイルを閉じる

これを実行すると、work.csvにSELECTした結果が出力される。

例)
0001,aaa,sample,100,AAA,2012/10/10
0002,bbb,sample,200,BBB,2013/10/10
0003,ccc,sample,400,DDD,2013/12/15

PR
ANALYZEとは・・・
データベース内のテーブルの内容に関する統計情報を取ってくるコマンド。

ANALYZE TABLE 表名 COMPUTE STATISTICS;

これでデータの全部を読んで統計を取る。

w_char 1   char(10);
w_var 1   varchar2(10);
w_char 2   char(10);
w_var 2   varchar2(10);

10バイト入るchar型とvarchar2型の変数を用意して
w_char 1 とw_var 1 に「ABCDEFG   」(Gの後ろは半角スペース3つ)という文字列を入れる。
w_char 2とw_var 2には「HIJK」という文字列を入れる。

w_char1 := 'ABCDEFG   ';
w_var1 :='ABCDEFG   ';
w_char2:= 'HIJK';
w_var2:='HIJK';

両方を画面などに表示させた時、

w_char1は 「ABCDEFG   」
w_var1 は 「ABCDEFG」
w_char2は 「HIJK      」
w_var2は 「HIJK」

となる。

char型の変数は、自分のバイト数より少ない文字列を入れると
後ろを自動的に半角スペース埋めしてくれる。
varchar2型は、文字列の後ろについた半角スペースをtrimしてくれる。

PL/SQL の中で使う変数を宣言するとき
VARCHAR2 は文字数を指定しないといけないが
NUMBER や CHAR は指定しなくても宣言できる。

w_NAME   VARCHAR(10);
w_TEL       NUMBER(11);
w_NUM     NUMBER;
w_SUM      CHAR(4);
w_SUM2    CHAR;
 

UNION したデータをソートしたいとき

 ORDER BY  テーブルA.カラム名 , テーブルB.カラム名

という書き方はできない。

 ORDER BY  自分で指定した別名1 , 別名2

と書く。
 ORDER BY のあとに指定するカラム名は、
自分でつけた別名でないといけない。
忍者ブログ * [PR]