数据库A中有两个表:表a和表b,表a有字段id_a, value_a, 表b的某字段和表a的主键id_a有多对一的关系。  
请写一个PHP函数,显示所有对应于表a中value_a第三大的值的表b的所有项。

解决方案 »

  1.   


    SELECT * FROM b WHERE field_b in (SELECT * FROM (SELECT id_a fROM a ORDER BY value_a ASC limit 2,1) t)
      

  2.   

    ORDER BY value_a DESC//DESC是第三大,,前面是小
      

  3.   

    field_b  是什么意思??
      

  4.   


    表b的某字段和表a的主键id_a有多对一的关系就是某字段
      

  5.   

    如3#说的,语句是可以改的当子查询返回一条的时候,就是如你描述的问题,SQL语句也可以改成下面这样但当子查询返回多条语句,你还是得选择1#所示的写法,虽然套了一层看起来没意义的查询你可以翻翻MYSQL的手册,子查询部分SELECT * FROM b WHERE field_b = (SELECT id_a fROM a ORDER BY value_a ASC limit 2,1)