例: 特定の条件下でのデフォルト値の挿入 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL関数、式、および述部

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Published
2021年7月
ft:locale
ja-JP
ft:lastEdition
2021-09-23
dita:mapPath
ja-JP/djk1612415574830.ditamap
dita:ditavalPath
ja-JP/wrg1590696035526.ditaval
dita:id
B035-1145
Product Category
Software
Teradata Vantage

次のEmployeeテーブル定義を考えます。

   CREATE TABLE Employee
      (Emp_ID      INTEGER
      ,Last_Name   VARCHAR(30)
      ,First_Name  VARCHAR(30)
      ,Dept_No     INTEGER DEFAULT 99
   );

例えば、次の式では、入力された値が負の場合に、Dept_No列にデフォルト値を挿入するためにDEFAULT関数を使用しています。

   USING (id INTEGER, n1 VARCHAR(30), n2 VARCHAR(30), dept INTEGER)
   INSERT INTO Employee VALUES
      (:id
      ,:n1
      ,:n2
      ,CASE WHEN (:dept < 0) THEN DEFAULT(Dept_No) ELSE :dept END
   );