如何獲得主鍵(非指數)爲特定的表中的Teradata的名單?獲得PK的名單表中的Teradata
我創建表
CREATE MULTISET TABLE TBL_TEMPORAL_TRANSACTTIME
(
ParID int not null,
DataSourceTypeCd VARCHAR(10) not null,
TxnPrd PERIOD(TIMESTAMP(6) WITH TIME ZONE) TITLE 'Transaction Period' NOT NULL AS TRANSACTIONTIME,
PRIMARY KEY(ParID, DataSourceTypeCd)
) PRIMARY INDEX (ParID);
我需要一些查詢返回列主鍵 所以我想「ParID」和「DataSourceTypeCd」列。 任何人都可以幫助我嗎?
我試圖
SELECT *
FROM DBC.IndicesV
WHERE TABLENAME='TBL_TEMPORAL_TRANSACTTIME'
AND IndexType = 'K'
;
但它給我空的結果。
SELECT IndexType, ColumnName, UniqueOrPK
FROM DBC.IndicesV
WHERE TABLENAME='TBL_TEMPORAL_TRANSACTTIME';
返回:
IndexType ColumnName UniqueOrPK
P ParID
J ParID K
J TxnPrd K
J DataSourceTypeCd K
你看着列UniqueOrPK? –
我得到了時態表的相同行爲。 – Andrew
它看起來像態表得到了與兩PK列+的TRANSACTIONTIME列'J'oin指數。而且它也是PrimaryKey的信息已經轉移到了UniqueOrPK字段。看起來像是一個特殊的情況,用PK實施限制。順便說一句。如果您嘗試添加另一個連接索引,你會得到「在連接索引DDL,連接索引不包括TRANSACTIONTIME列的當前形式的錯誤。」 – ULick