csv ファイルをテーブルにロードする

cvs ファイルをテーブルに読み込む方法を学ぶ。

手順

  1. テーブルを作る。
    create table TABLE NAME (date Date, Location VARCHAR(100), MinTemp REAL, MaxTemp REAL, Rainfall REAL, Evaporation REAL,Sunshine REAL, WindGustDir VARCHAR(20), WindGustSpeed INTEGER, WindDir9am VARCHAR(10), WindDir3pm VARCHAR(10), WindSpeed9am INTEGER, WindSpeed3pm INTEGER, Humidity9am INTEGER, Humidity3pm INTEGER, Pressure9am REAL, Pressure3pm REAL, cloud9am VARCHAR(10), cloud3pm VARCHAR(10), Temp9am REAL, Temp3pm REAL, RainToday varchar(30), RISK_MM REAL, RainTomorrow varchar(30));
    例:
    create table weather (date Date, Location VARCHAR(100), MinTemp REAL, MaxTemp REAL, Rainfall REAL, Evaporation REAL,Sunshine REAL, WindGustDir VARCHAR(20), WindGustSpeed INTEGER, WindDir9am VARCHAR(10), WindDir3pm VARCHAR(10), WindSpeed9am INTEGER, WindSpeed3pm INTEGER, Humidity9am INTEGER, Humidity3pm INTEGER, Pressure9am REAL, Pressure3pm REAL, cloud9am VARCHAR(10), cloud3pm VARCHAR(10), Temp9am REAL, Temp3pm REAL, RainToday varchar(30), RISK_MM REAL, RainTomorrow varchar(30));
  2. cvs ファイルをテーブルにロードする:
    nzload -df TABLE NAME
    nzload -df weatherAUS.csv -t weather -db weather -nullValue NA -boolStyle YES_NO -skipRows 1 -delim , -dateStyle MDY -dateDelim '/'
  3. identityカラムを持たないテーブル(weatherテーブルなど)については、identityカラムを作成し、rowidで値を設定する:
    alter table weather add column id bigint;
    update weather set id=rowid;