Yup -- I think so too. I never have any reason to use FULL OUTER JOIN however.Did you want output like this:/*I got 3 tables1 table with name categorycategory =Cid | nameC1 horror2 comedy3 dramasecond table are filmsFid | nameF | Cid | Pid1 movie1 1 202 movie2 3 213 movie3 2 204 movie4 2 235 movie5 1 21third are publishersPid | nameP20 john21 bart23 gren 26 jack*/DECLARE @category TABLE ([CID] INT, [nameC] VARCHAR(255))DECLARE @films TABLE ([FID] INT, [nameF] VARCHAR(255), [CID] INT, [PID] INT)DECLARE @publishers TABLE ([PID] INT, [nameP] VARCHAR(255))INSERT @category ([CID], [nameC]) SELECT 1, 'Horror'UNION SELECT 2, 'Comedy'UNION SELECT 3, 'Drama'UNION SELECT 10, 'Romance' -- Added to test no link to this categoryINSERT @films ([FID], [nameF], [CID], [PID]) SELECT 1, 'movie1', 1, 20UNION SELECT 2, 'movie2', 3, 21UNION SELECT 3, 'movie3', 2, 20UNION SELECT 4, 'movie4', 2, 23UNION SELECT 5, 'movie5', 1, 21INSERT @publishers ([PID], [nameP]) SELECT 20, 'John'UNION SELECT 21, 'Bart'UNION SELECT 23, 'Gren'UNION SELECT 26, 'Jack'-- FULL OUTER JOINSELECT c.[nameC] AS [Category] , f.[nameF] AS [Film] , p.[nameP] AS [Publisher]FROM @category c LEFT JOIN @films f ON f.[CID] = c.[CID] FULL OUTER JOIN @publishers p ON p.[PID] = f.[PID]
Charlie===============================================================Msg 3903, Level 16, State 1, Line 1736The ROLLBACK TRANSACTION request has no corresponding BEGIN TRANSACTION