本帖最后由 shayeyekai 于 2013-12-21 11:23:43 编辑

解决方案 »

  1.   

    也有其他问题SQL_CALC_FOUND_ROWS 和 FOUND_ROWS() 的应用对于UNION 问询比对于简单SELECT 语句更为复杂,原因是在UNION 中,LIMIT 可能会出现在多个位置。它可能适用于UNION中的个人 SELECT语句,或是总体上  到UNION 结果的全程。 SQL_CALC_FOUND_ROWS对于 UNION的意向是它应该不需要全程LIMIT而返回应返回的行数。SQL_CALC_FOUND_ROWS 和UNION 一同使用的条件是: SQL_CALC_FOUND_ROWS 关键词必须出现在UNION的第一个 SELECT中。 
     FOUND_ROWS()的值只有在使用 UNION ALL时才是精确的。若使用不带ALL的UNION,则会发生两次删除, 而  FOUND_ROWS() 的指只需近似的。 
    假若UNION 中没有出现  LIMIT ,则SQL_CALC_FOUND_ROWS 被忽略,返回临时表中的创建的用来处理UNION的行数。 
      

  2.   


    这个跟union没关系吧。这不是联合查询吗?还是没明白!