yxygrqlx

 

 

 深度思考:

1.

  如果让你来设计一个数据库,你会怎么设计这个表,包含用户关注的用户,被关注的用户所述的分组。

    (表中 要用关注者  和  被关注者,这样才能实现!!!)

  统计表中某一个字段的各种值的个数,然后排序 (sql语句是怎么写的,)

(排序可以用order by,但是order by后面跟的又是什么呢)

( 那还不是洒洒水了啊 ^ - ^)   group by    order by      limit     count

select belong_group,count(belong_group) as c from `user` group by belong_group order by desc limit 2

2. 

  找两个人的共同关注:

    先找出A的所有关注,然后在里面找A的关注!

(也就是含有子查询!!)

( 下面这个感觉合适吗? 没法再从括号中得到的结果再进行查询了 )

select * from (select follow_who from `users` u where u.who_follow=\'A\') where

 其实也相当于跨表查询!!!(只不过有一个表不是原来存在的,而是我们自己生成的)

  SELECT follow_who from ( SELCET who_follow,follow_who FORM `users` u  WHERE u.who_follow=\'A\' ) t ,users where users.follow=\'B\' and t.follow_who=users.follow_who

 

join怎么做?

  left join : 左边的是输入,加入到了右边 

  right join : 右边的是输入,加入到了左边

思考: 那么 left join  和 right join  ,join左右的sql执行的顺序是不一样的是不?

左连接:

select follow_who left join (select follow_who from users) u on u.who_follow=\'A\' and u.follow_who=users.follow_who from users where who_follow=\'B\'

右连接:

(  and u.follow_who=users.follow_who 这个就不能放在 right join的语句中了,对不对?)

select follow_who left join (select follow_who from users) u on u.who_follow=\'A\'  from users where who_follow=\'B\' and users.follow_who=u.follow

 

 

3. 

  建索引

 

分类:

技术点:

相关文章:

  • 2022-01-07
  • 2022-01-02
  • 2021-07-03
  • 2022-03-04
  • 2022-12-23
  • 2022-01-07
  • 2021-09-27
  • 2021-07-26
猜你喜欢
  • 2022-12-23
  • 2022-01-07
  • 2022-01-07
  • 2022-02-04
  • 2021-11-25
  • 2021-12-06
  • 2022-12-23
相关资源
相似解决方案