UPDATE文内のシステム生成TD_TIMEBUCKET列は参照できません。これにはUPDATE文のWHERE句内のTD_TIMEBUCKET列を参照することも含まれます。UPDATE文の詳細については、<Teradata Vantage™ SQLデータ操作言語、B035-1146>を参照してください。
例: PTIテーブルのUPDATE行
順次PTIテーブルocean_buoyのテーブル定義には、2012年1月1日のタイム ゼロ指定DATE '2012-01-01'と、1時間タイム バケットHOURS(1)が含まれます。
CREATE TABLE ocean_buoy(buoyid INT, temperature INT) PRIMARY TIME INDEX(TIMESTAMP(6), DATE '2012-01-01', HOURS(1), COLUMNS(buoyid), SEQUENCED);
この例では、順次PTIテーブルocean_buoyを更新し、指定したタイムスタンプ値とブイIDに一致する行に対してTD_SEQNOを10に設定します。
UPDATE ocean_buoy SET TD_SEQNO = 10 WHERE TD_TIMECODE = TIMESTAMP '2014-01-02 08:30:00' AND buoyid = 40;
この例では、システム生成TD_TIMEBUCKET列を更新できないため、エラーが返されます。
UPDATE ocean_buoy SET TD_TIMEBUCKET = 10 WHERE TD_TIMECODE = TIMESTAMP '2014-01-02 08:30:00' AND buoyid = 40;