中国开发网: 论坛: 数据库: 贴子 497442
haitao
使用表变量
declare @tmp table(字段定义,同forum_msgs)

10WHILE @@FETCH_STATUS = 0
11BEGIN
insert @tmp SELECT * FROM forum_msgs WHERE BlockID = @BlockID ORDER BY BlockOrderID
--忘了表变量是否支持insert ... select ...
13 FETCH NEXT FROM msgBlocks INTO @BlockID
14END;


另外,这个需求完全可以用一个sql搞定的嘛,现在这样要花20个sql,效率低很多啊

SELECT TOP 20 b.* FROM forum_msgs a
left join forum_msgs b on a.BlockID=a.BlockID
WHERE a.owner_board_name = 'java' AND a.BlockLayerID = 0
ORDER BY a.date_msg DESC,BlockOrderID

——这个转化好像有问题,不知道是不是原sql就有问题还是。。。。。

相关信息:


欢迎光临本社区,您还没有登录,不能发贴子。请在 这里登录