SqlServer2012 查询TOP与varchar(max)结合使用性能问题

SqlServer2012 两个表关联查询A表和B表,A表有个字段ms是varchar(max)类型,由于是分页查询,用到了TOP。SQL简化为:

SELECT TOP 15 ms FROM   (SELECT a.ms FROM   A a,(SELECT ID FROM  B GROUP  BY id) b WHERE  a.id = b.id

现象:
使用TOP查询ms字段CPU会瞬间达到99%,甚至100%;
经测试去掉关键字TOP查询ms字段正常;使用关键字TOP查询别的字段也正常。
求指点。

试试给字段ms做个索引,top会对字段ms进行排序,这个过程会比较费时和资源,加个索引应该快点