select Count(*) from TestTable
这个快
[[[[[[[[[欢迎加入群7499971]]]]]]]

解决方案 »

  1.   

    谢谢啦~
    还有其他sql语句中注意的什么的吗
    以前写过语句是这样的
    Select T1.TestId,T2.TestName From TestTable1 T1,TestTable2 T2 Where T1.ComID = T2.ID
    这样的要比
    Select T1.TestId,T2.TestName From TestTable1 T1 Left Join TestTable2 On T1.ComID = T2.ID 
    慢许多哦
      

  2.   

    你说的两个语句应该不是一个用途,一个left join 一个是inner join.
      

  3.   

    两表直接关联和Left join是不一样的
    看用什么地方
    left join不需要在table2中有对应关系
      

  4.   

    SELECT SQL_CALC_FOUND_ROWS fields1 FROM table1 WHERE conf1 LIMIT x,y
    得到需要的记录数.然后再 
    SELECT found_rows() AS countall得到查询记录总数.
      

  5.   

    以前写过语句是这样的
    Select T1.TestId,T2.TestName From TestTable1 T1,TestTable2 T2 Where T1.ComID = T2.ID
    这样的要比
    Select T1.TestId,T2.TestName From TestTable1 T1 Left Join TestTable2 On T1.ComID = T2.ID
    慢许多哦
    =======================================================================
    两句用法不同,具体怎么用可以得到相同结果,而且更快,请自行斟酌。
    第一句返回的是两表符合条件的记录(TestTable1 and TestTable2)。
    第二句返回的是left join前面那个表的所有记录(即TestTable1),所以第二句的执行时间与表TestTable1的记录数是成正比的。你可以选择两个记录数相差很大的关联表,比如表1有记录数100000条,表2记录数10条,这样来做测试,就会明白了。