所以这里有一个场景如下:
在Sitecore中查找特定父模板项的所有项的字段值 (即假设我想列出新闻列表的字段值,其中新闻列表是新闻类型项目)
使用SQL Query所以我在SharedFields和Items表的帮助下正在做什么我试图获取信息但无法获取信息。 对于单场我得到的但是多次我无法做到: 这是查询:
SELECT distinct S.ItemId, S.Value AS NewsType,
FORMAT(S.Created,'yyyy/MM/dd') AS CreatedOn, FORMAT(S.Updated,'yyyy/MM/dd') AS UpdatedOn
FROM
[DBName].[dbo].[Items] I,
[DBName].[dbo].[SharedFields] S
WHERE I.ParentID='{XXXXXX-X-XXXXX-XXXXX-XXXXXX}'
AND S.FieldId='{YYYY-YYYY-Y-Y-Y-Y-Y-YYYYY}'
其中PARENTID是新闻项的ID and fieldid是newstype的id
现在我想在查询中再添加一列作为newsOf
那我怎么能这样做呢?
答案 0 :(得分:1)
您需要在FROM
子句中添加另一个表格(第二个SharedFields
)并使用JOIN
,如下所示:
SELECT
S.ItemId,
S.Value AS NewsType,
S2.Value AS NewsOf,
FORMAT(S.Created,'yyyy/MM/dd') AS CreatedOn,
FORMAT(S.Updated,'yyyy/MM/dd') AS UpdatedOn
FROM
[DBName].[dbo].[Items] I
JOIN [DBName].[dbo].[SharedFields] S ON S.ItemId = I.ID
JOIN [DBName].[dbo].[SharedFields] S2 ON S2.ItemId = I.ID
WHERE
I.ParentID='{11111111-1111-1111-1111-111111111111}'
AND S.FieldId='{field-1-id}'
AND S2.FieldId='{field-2-id}'