zoukankan      html  css  js  c++  java
  • SELECT TOP 100 PERCENT * 的含义

    --返回符合条件的100%的记录,即所有符合条件的记录
    SELECT TOP 100 PERCENT *

    --返回符合条件的100条记录,即只返回符合条件的100条记录
    SELECT TOP 100 *  

    sql="select top 30 * from data where title='"&title1&"' order by id desc"
    原意是选出符合“where 条件”的记录集里的“前30条”

    但是,对于该SQL语句,由于语句里同时存在where和top语句的,并且where条件列不是合适的索引,程序执行的是全表扫描,首先是查找符合where条件的记录, 而这里的top限制形同虚设。如果全表是百万级别以上的数据表,那么就这么一个简单的判断,就有可能拖垮数据库。

    所以需要先把符合“where条件”的记录,用一个子查询筛选出来,再在筛选结果集里选top30。

    因为SQL规则规定,如果子查询里,有order ...,就必须有TOP,所以就用SELECT TOP 100 PERCENT来限定,top 100 percent是为了保证筛选出所有符合条件的数据条目

  • 相关阅读:
    利用shell脚本实现免密认证
    利用shell脚本实现https证书认证
    高级sed命令
    Zabbix自定义监控
    Zabbix三种邮箱告警配置
    Zabbix配置
    监控服务Zabbix部署
    Ftp
    Samba
    NFS
  • 原文地址:https://www.cnblogs.com/yzl495/p/4142076.html
Copyright © 2011-2022 走看看