【问题标题】:How to write this sql statement - inner join这条sql语句怎么写——内连接
【发布时间】:2015-04-05 14:35:44
【问题描述】:

我有带有这些表的 SQL Server

  • Statuses -> 字符串用户名,字符串名称,字符串内容,int id(key)
  • Likes -> 字符串 id,字符串 StatusId(f key),字符串用户名

我想把每一个状态和他的点赞都呈现在一个SQL语句中,即使它没有点赞;我能做什么?谢谢!

【问题讨论】:

  • 请根据您的尝试编辑您的问题。样本数据和期望的结果也很有帮助。

标签: sql sql-server join left-join


【解决方案1】:

如果要计数,请使用left joingroup by

select s.id, count(l.status_id) as numlikes
from status s left join
     likes l
     on s.id = l.status_id
group by s.id;

【讨论】:

    【解决方案2】:

    如果你想呈现每个状态和他的点赞,即使它没有点赞,你应该使用左连接而不是内连接。

    Select a.*,b.username as hislike 
    from Statuses a left join Likes b 
    on b.StatusId=a.id
    

    【讨论】:

      猜你喜欢
      • 2012-09-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-15
      相关资源
      最近更新 更多