2013-02-07 49 views
0

更新數據插入到表從查詢產生的I這裏查詢該表我怎樣才能在MYSQL

SELECT 
    a.ESN, 
    b.URL, 
    a.Status, 
    a.GroupID, 
    a.RouteID 
FROM STx a 
    LEFT JOIN Routes b 
    ON a.RouteID = b.RouteID 
WHERE a.GroupID = 39 
    AND a.Status = "Provisioned" 
order by a.ESN; 

現在從結果集的這一點,我想修改URL表格中的路線測試url列中的所有行從第一個查詢的結果列。我怎麼能在查詢中做到這一點?

回答

0
update Routes set url = 'test' 
where id in (
    select b.id 
    from Stx a left join routes b on a.routeid = b.routeid 
    where a.groupid = 39 and a.status = 'Provisioned' 
); 
+0

但b.id只在select語句 – user2041213

+0

內被更新,b。潛入錯誤的地方。 – Tobb

0

如果我正確理解您的問題,您想要更新URL列以'測試'您從原始查詢中獲得的所有結果。

UPDATE Routes 
SET URL = 'Test' 
FROM STx AS A 
LEFT JOIN Routes AS B 
ON a.RouteID = b.RouteID 
WHERE a.GroupID = 39 AND a.Status = 'Provisioned' 
+0

更新爲在該URL列中爲NULL的所有行 – user2041213

+0

您只希望它適用於URL爲NULL的行嗎?然後在WHERE子句中添加一個額外的檢查,如AND b.URL IS NULL – JodyT