我有一個表'玩家'和'獎項'。我有一些重複的玩家條目,它們有不同的id,但是有相同的信息。使用另一個查詢從聯接中更新表?
我試圖更新與第二個玩家條目相關的獎項,以便我最終可以刪除重複項。
這顯然不是最有效的查詢,但它只需要運行一次,而且只有10-15個副本。 到目前爲止,我有這樣的:
UPDATE aw
SET aw.player_id = map.id1
FROM awards as aw,
(SELECT a.id as id1, b.id as id2
FROM players a, players b
WHERE a.first_name = b.first_name
AND a.last_name = b.last_name
AND a.id != b.id
AND a.team is not null
AND a.college is not null) as map
WHERE map.id2 = aw.player_id
這給了我一個未指定的語法錯誤,但如果我更換了前兩行只 「選擇aw.player_id,map.id1」,它返回一個兩列的表與期望的值(所以列名和表引用都是正確的)。
我必須錯過一些明顯的東西,但它是什麼?
ahhh非常感謝你。我知道這很愚蠢。我對sql的缺乏經驗清楚地顯示出來! – pclem12 2012-04-05 21:20:37
我很高興我能幫忙:) – 2012-04-05 21:22:51