A表 相册表xiangce_id  xiangce_title.....B表 照片表xiangpian_id xiangce_id......其中xiangce_id为两个表关联ID求一条SQL语句,查询相册表的xiangce_id ,xiangce_title信息和xiangce_id 对应的照片数量,谢谢。

解决方案 »

  1.   


    SELECT A.xiangce_id, A.xiangce_title, count( * ) AS num
    FROM A
    LEFT JOIN B ON B.xiangce_id = A.xiangce_id
    GROUP BY A.xiangce_id
    LIMIT 0 , 30试试
      

  2.   


    谢谢,好像有点问题,这样查询出来num的值是1,而实际数据库里是只有相册没有照片,还有,如果要查某个xiangce_id的值,后面加了条件xiangce_id=2,查询出来为空。
      

  3.   

    LEFT JOIN改用INNER JOIN后面加条件,你怎么加的? 在ON后面加,and A.xiangce_id=2
      

  4.   

    SELECT A.xiangce_id, A.xiangce_title, count( * ) AS count FROM A,B where A.xiangce_id = B.xiangce_id GROUP BY B.xiangce_id
      

  5.   

    select * from A, (select xiangce_id, count(*) from B group by 1) t1 where A.xiangce_id=t1.xiangce_id
      

  6.   

    SELECT A.xiangce_id, A.xiangce_title, count( B.xiangpian_id) AS num
    FROM A
    LEFT JOIN B ON B.xiangce_id = A.xiangce_id
    GROUP BY A.xiangce_id, A.xiangce_title
      

  7.   

    SELECT A.xiangce_id, A.xiangce_title, count( * ) AS count FROM A,B where A.xiangce_id = B.xiangce_id and A.xiangce_id=2 GROUP BY B.xiangce_id
      

  8.   

    SELECT A.xiangce_id, A.xiangce_title, B.count( * ) AS num
    FROM A
    outer JOIN B ON B.xiangce_id = A.xiangce_id 具体参考,http://www.eduexam.cn/netschool/VF/5/21.htm
      

  9.   

    SELECT A.xiangce_id, A.xiangce_title, count( B.xiangpian_id) AS num
    FROM A
    LEFT JOIN B ON B.xiangce_id = A.xiangce_id 
    GROUP BY A.xiangce_id, A.xiangce_title可以了,最终用的是这个,我之前写时没加GROUP BY就会没有结果,还有,如果要再加条件,要写在GROUP BY 前面,谢谢大家。