具有包含列的SQL Server索引-转换为Oracle

时间:2018-06-26 19:32:41

标签: sql sql-server oracle

我对SQL Server完全陌生。当前必须将表,索引,触发器等转换为Oracle。据我所知,Oracle中没有INCLUDE这样的东西。请问如何将包含列的索引转换为Oracle索引?

CREATE NONCLUSTERED INDEX [index_name] 
    ON [dbo].[table_name] ([col1] ASC, [col2] ASC)
    INCLUDE ([col3], [col4]) 
    WITH (PAD_INDEX  = OFF...

这是标准的Oracle语法:

CREATE INDEX index_name ON table_name (col1, col2);

我应该简单地将col3和col4添加到索引中吗?

没有SQL Server版本。我得到的只是文件,然后手动进行全部转换。 谢谢大家。

1 个答案:

答案 0 :(得分:0)

理论上应该起作用。包含列意味着在索引查找期间(在连接条件或where子句中)它们不用作谓词,但是可以在不进行键查找的情况下返回这些列中的数据。

将包含的列添加到现有键的末尾。确保同时测试速度和索引大小。

Indexes with Included Columns