我剛開始學習T-SQL,任何人都可以指出我的錯在哪裏?任何幫助將不勝感激!從DataCamp T-sql數據庫分配
問題:
的AdventureWorksLT
數據庫包括名爲dbo.ufnGetAllCategories
表值函數,它返回產品類別的表(例如,「公路自行車」)和親本的類別(例如「自行車」)。
說明:
編寫使用該函數返回的所有產品,包括他們的父類和自己的類別列表的查詢。確保使用提供的別名和其他地方的默認列名。
我曾嘗試:
CREATE FUNCTION dbo.ufnGetAllCategories(@ProductCategoryID AS Integer);
RETURNS TABLE
AS
RETURN
(SELECT C.ParentProductCategoryName AS ParentCategory,
C.ProductCategoryName AS Category,
P.ProductID, P.Name AS ProductName
FROM SalesLT.Product AS P JOIN SalesLT.ProductCategory AS C
ON P.ProductCategoryID = C.ProductCategoryID
JOIN dbo.ufnGetAllCategories() AS f
ON P.ProductCategoryID = f.ProductCategoryID
ORDER BY ParentCategory, Category, ProductName);
我的輸出:
不正確提交
溶液中的列ParentCategory不具有相同的名稱和值在列你的結果。
你可以請編輯您的帖子,從每個表提供了一些樣本數據,所以我們可以更清楚地看到架構。你爲什麼要在頂部創建函數?你是不是應該使用提供的功能來解決問題,而不是設計功能?你底部的輸出並沒有真正告訴我們任何事情,因爲它不是SQL錯誤,這只是你提交這個給大家的任何作業網站的東西。 – EMUEVIL
請閱讀[this](http://spaghettidba.com/2015/04/24/how-to-post-a-t-sql-question-on-a-public-forum/),瞭解有關改善問題的一些提示。 – HABO
感謝TheGameiswar。 這裏是未校正的問題 SELECT C.ParentProductCategoryName AS ___, C.ProductCategoryName AS ___, P.ProductID,P.Name AS ___ FROM SalesLT.Product爲P JOIN DBO .___()AS ___ P上.___ = C.___ ORDER BY ParentCategory,Category,ProductName; 表是以下 – Noble2017