在SQL Server中使用UPPER函数进行索引

Vai*_*wat 1 sql-server liquibase

我正在尝试在SQL Server中使用以下查询使用liquibase创建索引。

CREATE NONCLUSTERED INDEX LASTNAME_IDX ON EMPLOYEE(UPPER(LAST_NAME));
Run Code Online (Sandbox Code Playgroud)

但是在运行liquibase时出现错误。它在oracle中工作正常。让我知道是否可以在SQL Server中创建索引

Tim*_*sen 7

SQL Server不支持Oracle所支持的函数索引。一种解决方法是创建一个计算的大写列,然后为该索引建立索引:

ALTER TABLE EMPLOYEE ADD LAST_NAME_UPPER AS UPPER(LAST_NAME);
CREATE NONCLUSTERED INDEX last_name_idx ON EMPLOYEE(LAST_NAME_UPPER);
Run Code Online (Sandbox Code Playgroud)