如何在SQL中连接表来修改此查询?它正在绞尽脑汁
我正在尝试运行三个SQL表。在我的第一篇文章中,两个SQL查询工作得很完美。但它们适用于所有产品。我只需将这些分配给两个部分ID。
脚本
INSERT ProductCustomerLevel (
ProductID,
CustomerLevelID
)
SELECT ProductID,
CustomerLevel
FROM dbo.Product p
CROSS JOIN (
SELECT 5 AS CustomerLevel
UNION ALL
SELECT 7
) c
这会将所有ProductID值映射到客户级别5& 7.我想在这里做的只是将所有产品映射到SectionID的5345和5346.这些部分ID保存在一个名为Sections的表中。还有另一个名为ProuductSection的表。 ProductID的值在Product.dbo和ProductSection.dbo中。
在ProductSection中,字段是ProdcutID,SectionID所以我需要将这些sectionid链接到上面的查询
答案 0 :(得分:1)
这个选择5345&部分中的所有产品ID。 5346
SELECT p.ProductID FROM dbo.Product p
INNER JOIN dbo.ProuductSection ps ON (p.ProductID = ps.ProductID)
WHERE ps.SectionID IN (5345, 5346)
编辑:顺便说一下,这太奇怪了......
SELECT ProductID,
CustomerLevel
FROM dbo.Product p
CROSS JOIN (
SELECT 5 AS CustomerLevel
UNION ALL
SELECT 7
) c
你不应该这样做。试试我的方式