• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
人生之路,职业之路
读书使人充实,交谈使人机敏,写记使人精确;
“动因+兴趣”——决心-持之以恒-见效
博客园    首页    新随笔    联系   管理    订阅  订阅
SQL 经验积累中
SQL 学习
1. 动态执行SQL语句,
    如果不是到了非用地步,最好少用,运行效率不高.
    declare @num int
    declare @sql nvarchar(4000)
    set @num = 1000
    set @sql = 'select top ' + cast(@num as nvarchar) + ' id, name from user'
    execute(@sql)

2.在where 条件中左边尽可能保持字段原貌,所有运算最好放到右边做.
   例如: where date_sent <= dateadd(dd, -7, getdate())

3.现在MSSQL2005增加CTS功能, 目前我只在select分页数据中用到,效果还不错.
最近用在批量Update数据中,效果不是很好.
同样的测试环境,用CTS, update 10000要用40分钟; 选用top N方式,只需要十几秒.
posted on 2008-04-03 14:51  FreeBird  阅读(150)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3