次の定義のあるDBC.HostsInfoシステム ビューについて考慮します。
REPLACE VIEW DBC.HostsInfo (LogicalHostId, HostName, DefaultCharSet) AS SELECT LogicalHostId ,HostName ,DefaultCharSet FROM DBC.Hosts WITH CHECK OPTION;
基礎となるテーブルのDBC.Hostsには、次の定義があります。
CREATE SET TABLE DBC.Hosts, FALLBACK, NO BEFORE JOURNAL, NO AFTER JOURNAL, CHECKSUM = DEFAULT (LogicalHostId SMALLINT FORMAT 'ZZZ9' NOT NULL ,HostName VARCHAR(128) CHARACTER SET UNICODE NOT CASESPECIFIC NOT NULL ,DefaultCharSet VARCHAR(128) CHARACTER SET UNICODE NOT CASESPECIFIC NOT NULL) UNIQUE PRIMARY INDEX (LogicalHostId) UNIQUE INDEX (HostName);
次の文では、DEFAULT関数にDBC.HostsInfo.HostNameビュー列名を使用しています。
SELECT DISTINCT DEFAULT(HostName) FROM DBC.HostsInfo;
DEFAULT関数の結果はNULLになります。これは、HostNameビュー列が、明示的なデフォルト値のないテーブル列から派生しているからです。