2015-04-05 4 views
0

У меня есть SQL Server с этими таблицамиКак написать этот SQL заявление - внутреннее соединение

  • Statuses -> строка имя пользователя, имя строки, содержимое строки, внутр Ид (ключ)
  • Likes -> строка идентификатор , строка StatusId (f ключ), имя пользователя строки

Я хочу представить каждый статус и его предпочтения, даже если он не имеет каких-либо симпатий, только в одном выражении SQL; что я мог сделать? Благодаря!

+0

Измените ваш вопрос тем, что вы пробовали. Также полезны примеры данных и желаемые результаты. –

ответ

2

Если вы хотите счетчик, используйте left join и group 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; 
0

Если вы хотите, чтобы представить всякого статуса и его любит, даже если доза не любит, вы должны использовать левое соединение вместо внутреннего соединения.

Select a.*,b.username as hislike 
from Statuses a left join Likes b 
on b.StatusId=a.id 
Смежные вопросы