Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
有没有办法使用 DATALENGTH 截断 nvarchar?我正在尝试在列上创建索引,但索引最多只能接受 900 个字节。我有由 1000 多个字节组成的行。我想截断这些行,只接受前 n 个字符 <= 900 字节。
这个sql有用吗,只需更新该列的表。
Update Table Set Column = Left(Ltrim(Column),900)
修剪列,左侧或右侧至 900 个字符,在该列上创建索引
ALTER TABLE usertable ADD used_column AS LEFT(nvarcharcolumn,900);
在这个用过的柱子上创建一个索引。它会起作用
创建一个表示要索引的数据的 COMPUTED COLUMN,然后在其上创建索引。
ALTER TABLE MyTable ADD ComputedColumn AS LEFT(LargeNVarcharColumn,900); CREATE NONCLUSTERED INDEX MyIndex ON MyTable ( ComputedColumn ASC );
参考: