MySQL的一些sql语句(持续更新)

有些sql语句第一次写错了,或者想了一下才知道怎么搞

1.查询收藏夹信息并显示收藏夹中有多少个收藏:

原写法:

SELECT A.collect_group_id, A.group_name, COUNT(*) total_num
      FROM collect_group A
      LEFT JOIN user_collect B
      ON A.user_id = B.user_id
      WHERE A.user_id = #{arg0}
    GROUP BY A.collect_group_id

问题:用的外连接,不管收藏夹有没有收藏数据,没有收藏和收藏了一条数据都显示1

解决:

 SELECT A.collect_group_id, A.group_name,
      (SELECT COUNT(*) FROM user_collect B WHERE A.collect_group_id = B.collect_group_id) total_num
      FROM collect_group A
      WHERE A.user_id = #{arg0}

2.查询数据的时候显示这是第几条数据(例:百度贴吧的楼层数)

猜你喜欢

转载自www.cnblogs.com/woyujiezhen/p/12631733.html
今日推荐