我正在处理一个应用程序。我有桌子的地方: -
Category(Category_ID,CategoryName,Parent,Category_Tag)
在此表中,类型bigint和CategoryName以及Category_Tag的Category_ID和Parent是nvarchar。我想从Category表中选择所有CategoryName及其Name和Parent Name。如果任何类别没有任何父类,则查询应返回“ - ”
我使用了以下sql查询:
SELECT Category_ID, Category_Name, Parent, Category_Tag FROM Category
但是没有得到理想的结果。请帮助我。
答案 0 :(得分:1)
如果您只需要一个级别的父类别,请使用LEFT JOIN
SELECT a.Category_ID, a.Category_Name, a.Parent, a.Category_Tag,
ISNULL(b.Category_Name,'-') as Parent_Name
FROM Category as a
LEFT JOIN Category as b on (a.Parent=b.Category_ID)
答案 1 :(得分:0)
如果要将空父项替换为“ - ”,请使用ISNULL
SELECT Category_ID, Category_Name, ISNULL(convert(varchar(20),Parent), '-') as Parent, Category_Tag FROM Category