产品关系需要Sql查询帮助
我有一个包含以下信息的产品表。产品关系需要Sql查询帮助,sql,sql-server,sql-server-2008,Sql,Sql Server,Sql Server 2008,我有一个包含以下信息的产品表。 ID ProductId Name OtherData 1 0 A数据1 20B数据2 3 1 A1空 4 1 A2空 我需要所有数据的详细信息ProductId是与ID列的关系 我需要的结果如下 ID ProductId Name OtherData 1 0 A data1 2 0 B data2 3 1 A1 data1 4 1 A2 data1 ID
ID ProductId Name OtherData
1 0 A数据1 20B数据2 3 1 A1空 4 1 A2空 我需要所有数据的详细信息ProductId是与ID列的关系 我需要的结果如下 ID ProductId Name OtherData
1 0 A data1 2 0 B data2 3 1 A1 data1 4 1 A2 data1 ID ProductId Name OtherData
1 0 A数据1 20B数据2 3 1 A1数据1 4 1 A2数据1
我应该使用哪种联接或查询?如何确定第三行和第四行的匹配?我需要来自其相关行的其他数据,其中productid为1。在第三行和第四行上,productid为1。这些行不包含“data1”的值。所以,我再次提出一个问题:如何确定您想要“data1”?你只是想把所有的空值都转换成“data1”吗?这是相关的产品。我需要在产品详细信息页面上显示所有详细信息,并在列表页面上显示相同的信息。所有细节。
SELECT s.ID, s.ProductId, s.Name,
OtherData = COALESCE(s.OtherData, r.OtherData)
FROM dbo.Products AS s
LEFT OUTER JOIN dbo.Products AS r
ON s.ProductId = r.ID;
SELECT s.ID, s.ProductId, s.Name,
OtherData = COALESCE(s.OtherData, r.OtherData)
FROM dbo.Products AS s
LEFT OUTER JOIN dbo.Products AS r
ON s.ProductId = r.ID;