sql技巧

1、Oracle和SQL server是有很大差异的,并不仅是字段的差异,包括索引使用、锁机制、查询优化机制等都不同,要注意区别。
2、表连接尽量用inner join。减少在where中or或In的方式,它们 会引起全表扫描
3、Where中少用 NOT!=<>!<!>NOT EXISTSNOT INNOT LIKE,它们会引起全表扫描
4、Where中少用函数,如abs,Lower等,它们会引起全表扫描,但简单的操作如字段*2是可以的
6、Like语句:name like ‘%’ 会用到索引,而name like ‘%张’则会全表扫描
7、OracleIn子查询返回的结果不能超过1000条,慎用。用 exists是个替代的方案。
8、 Selcet中每少提取一个字段,数据的提取速度就会有相应的提升。提升的速度还要看您舍弃的字段的大小来判断。所以不要使用Select *
9、重点:程序中写SQL语句要用带“?”的PrepareStatement(Java)或带“:字段名”的SQL(Delphi),用pstmt.setString()或Parameters.ParamByName('').Value(Delphi)设置参数,而不要用一条拼好参数的字符串,这样才能使用上数据库的缓存机制
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值