动态插入行的SQL查询

时间:2010-02-03 10:24:05

标签: sql sql-server-2005

我的数据如下:

ItemCode          Attribute      PositionID   
ITEM-000032 CHESTSIZE   1
ITEM-000032 JACKETLEN            2
ITEM-000042 CHESTSIZE            1
ITEM-000042 JACKETLEN            2
**ITEM-000049   SLACKWAIST  1**
ITEM-000071 CHESTSIZE            1
ITEM-000071 JACKETLEN            2
ITEM-000074 CHESTSIZE            1
ITEM-000074 JACKETLEN            2

在除ITEM-000049之外的上述数据中,其他数据完美结合。所以我想为ITEM-000049创建一个新行 正如

ITEM-000049 --  2

让它变得完美。

亲切的问候, 嗡

1 个答案:

答案 0 :(得分:1)

听起来对于每个ItemCode,您期望2个记录,对于2个不同的属性。

所以这就是我认为你所追求的。只需先运行它的SELECT部分​​而不用INSERT来检查它确实是你所追求的。

INSERT YourTable (ItemCode, Attribute, PositionID)
SELECT t.ItemCode, 'SECOND ATTRIBUTE', 2
FROM 
(
SELECT ItemCode
FROM YourTable
GROUP BY ItemCode
HAVING COUNT(*) = 1
) t