Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 join трех таблиц  [new]
taaamerlan
Member

Откуда: Ukraine, Donetsk
Сообщений: 462
Я в синтаксисе join не очень разбираюсь. Вот код:
ALTER PROCEDURE [dbo].[GetUserInfoById]

	@Id int
	
AS
BEGIN
	-- SET NOCOUNT ON added to prevent extra result sets from
	-- interfering with SELECT statements.
	SET NOCOUNT ON;

    -- Insert statements for procedure here
	select 
		FullUserInfo.UserID, FullUserInfo.Email, FullUserInfo.FirstName,
		FullUserInfo.LastName, FullUserInfo.ImgURL, FullUserInfo.Password ,
		FullUserInfo.Skype, FullUserInfo.Status, FullUserInfo.TelNumber,
		FullUserInfo.Vk,FullUserInfo.Additionally,
		COUNT(Photos.PhotoId ) as PhotosCount, 
		COUNT(Albums.AlbumID) as AlbumsCount
from FullUserInfo left join Photos join Albums
  on FullUserInfo.UserID =Photos.UserID = albums.UserId  where FullUserInfo.UserID = @Id
group by 
		FullUserInfo.UserID, FullUserInfo.Email, FullUserInfo.FirstName,
		FullUserInfo.LastName, FullUserInfo.ImgURL, FullUserInfo.Password ,
		FullUserInfo.Skype, FullUserInfo.Status, FullUserInfo.TelNumber,
		FullUserInfo.Vk, FullUserInfo.Additionally

	
	 
END

в части
on FullUserInfo.UserID =Photos.UserID = albums.UserId  where FullUserInfo.UserID = @Id

среда ругается. Как написать такое с правильным синтаксисом?
18 дек 13, 00:29    [15308168]     Ответить | Цитировать Сообщить модератору
 Re: join трех таблиц  [new]
sdet
Member

Откуда:
Сообщений: 463
taaamerlan,
А может сначала попробовать с синтаксисом ознакомиться, а потом написать?
18 дек 13, 00:39    [15308180]     Ответить | Цитировать Сообщить модератору
 Re: join трех таблиц  [new]
taaamerlan
Member

Откуда: Ukraine, Donetsk
Сообщений: 462
sdet, не могу найти, где упоминается об соединении более двух таблиц
18 дек 13, 00:41    [15308184]     Ответить | Цитировать Сообщить модератору
 Re: join трех таблиц  [new]
tsql
Guest
taaamerlan,

declare @Id int
select   F.UserID,   F.Email,  F.FirstName
        ,F.LastName, F.ImgURL, F.Password
        ,F.Skype,    F.Status, F.TelNumber
        ,F.Vk,       F.Additionally
        ,COUNT(P.PhotoId ) as PhotosCount
        ,COUNT(A.AlbumID)  as AlbumsCount
from FullUserInfo F
join Albums       A on F.UserID = A.UserId
left join Photos  P on F.UserID = P.UserID
    where F.UserID = @Id
        group by F.UserID,   F.Email,  F.FirstName
                ,F.LastName, F.ImgURL, F.Password
                ,F.Skype,    F.Status, F.TelNumber
                ,F.Vk,       F.Additionally
18 дек 13, 00:43    [15308187]     Ответить | Цитировать Сообщить модератору
 Re: join трех таблиц  [new]
taaamerlan
Member

Откуда: Ukraine, Donetsk
Сообщений: 462
tsql, спасибо большое, хотя я уже сам разобрался
18 дек 13, 00:47    [15308193]     Ответить | Цитировать Сообщить модератору
 Re: join трех таблиц  [new]
Glory
Member

Откуда:
Сообщений: 104760
taaamerlan
не могу найти, где упоминается об соединении более двух таблиц

Статья хелпа так и называется - Joining Three or More Tables
18 дек 13, 10:14    [15309114]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить