select W_MODELIMG.pic, W_MODELPHOTO.name, W_MODELPHOTO.id from W_MODELPHOTO join W_MODELIMG on W_MODELPHOTO.userid = #{user_id} and W_MODELPHOTO.id  = W_MODELIMG.photoid
2个表  一个是W_MODELIMG照片表  一个是W_MODELPHOTO相册表  我是想根据用户id去查找他的相册,在根据相册去查找照片,我现在是只要得到一个照片的pic就行,用于相册的封面展示,就跟QQ空间那样,再点进去后就把这个相册里面所有的照片显示出来。现在SQL怎么写?我最最后想得到的记录是相册的名字,相册的id和相册中的某一张照片的pic,求大神

解决方案 »

  1.   

    select W_MODELIMG.pic, W_MODELPHOTO.name, W_MODELPHOTO.id ,count(1) over(partition by W_MODELPHOTO.id )
      

  2.   

    我想要的结果就是:
    pic     name      count   photoid
    xxxx    我的相册   15     相册id
    pppp    你的相册   20     相册id这pic是某一张照片的pic  随便是哪一个就行。
      

  3.   

    select MIN(W_MODELIMG.pic), W_MODELPHOTO.name, W_MODELPHOTO.id,COUNT(*) 
    from W_MODELPHOTO join W_MODELIMG on W_MODELPHOTO.userid = #{user_id} and W_MODELPHOTO.id  = W_MODELIMG.photoid
    GROUP BY W_MODELPHOTO.name, W_MODELPHOTO.id差不多一个意思
      

  4.   

    如果W_MODELIMG.pic这个字段类型特殊无法min()的话,就在再加一层查询