以前用的是SQLserver,他有一个TOP关键字,可以限制返回的结果。
比如有100万行的表:
select TOP 10 * from table1;
那么只返回最前面的10行数据。我想问下MySQL有没有类似的关键字可以实现这种功能。

解决方案 »

  1.   

    在mysql中,使用:
    select * from table1 limit 10;
      

  2.   

    select * from tablename order by colName LIMIT N,MMySQL官方文档 http://dev.mysql.com/doc/refman/5.1/zh/index.html13.2.7. SELECT语法
    13.2.7.1. JOIN语法
    13.2.7.2. UNION语法
     
    SELECT
        [ALL | DISTINCT | DISTINCTROW ]
          [HIGH_PRIORITY]
          [STRAIGHT_JOIN]
          [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT]
          [SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS]
        select_expr, ...
        [INTO OUTFILE 'file_name' export_options
          | INTO DUMPFILE 'file_name']
        [FROM table_references
        [WHERE where_definition]
        [GROUP BY {col_name | expr | position}
          [ASC | DESC], ... [WITH ROLLUP]]
        [HAVING where_definition]
        [ORDER BY {col_name | expr | position}
          [ASC | DESC] , ...]
        [LIMIT {[offset,] row_count | row_count OFFSET offset}]
        [PROCEDURE procedure_name(argument_list)]
        [FOR UPDATE | LOCK IN SHARE MODE]]
      

  3.   

    select * from table1 order by f1 limit 10;