SELECT P.ProductId, P.ProductCategoryId, P.ParentProductCategoryId,
P.ProductName, PC.Name AS Category, P.Price, P.ProductYear
FROM dbo.ProductCategory AS PC
INNER JOIN
(SELECT dbo.ProductCategory.ParentProductCategoryId,
dbo.ProductCategory.ProductCategoryId,
dbo.ProductCategory.Name AS CategoryName,
dbo.Product.ProductId,
dbo.Product.Price,
dbo.Product.Name AS ProductName,
dbo.Product.ProductYear
FROM dbo.Product
INNER JOIN dbo.ProductCategory
ON dbo.ProductCategory.ProductCategoryId = dbo.Product.ProductCategoryId
) AS P
ON PC.ProductCategoryId = P.ParentProductCategoryId