11 HAZİRAN 2009, PERŞEMBE
SQL update birleşimler kullanarak sorgu
3 birleştirme tablolar tarafından döndürülen değeri olan bir alanı güncelleştirmek için var.
Örnek:
select
im.itemid
,im.sku as iSku
,gm.SKU as GSKU
,mm.ManufacturerId as ManuId
,mm.ManufacturerName
,im.mf_item_number
,mm.ManufacturerID
from
item_master im, group_master gm, Manufacturer_Master mm
where
im.mf_item_number like 'STA%'
and im.sku=gm.sku
and gm.ManufacturerID = mm.ManufacturerID
and gm.manufacturerID=34
Yukarıdaki durumda katılmış olan Tablo mf_item_number
alan değerleri 5* *başka bir değer ile güncellemek istiyorum.
Nasıl MS SQL Server bunu yapabilir miyim?
CEVAP
11 HAZİRAN 2009, PERŞEMBE
Edit: katılır ANSI değişti
UPDATE
im
SET
mf_item_number = gm.SKU --etc
FROM
item_master im
JOIN
group_master gm ON im.sku=gm.sku
JOIN
Manufacturer_Master mm ON gm.ManufacturerID=mm.ManufacturerID
WHERE
im.mf_item_number like 'STA%'
AND
gm.manufacturerID=34
Düzen, Kasım 2011
Bunu açıklığa kavuşturmak için... UPDATE yan tümce bir tablo için bir diğer ad FROM yan tümce belirtilen başvuru yapabilirsiniz. Bu durumda im
geçerlidir
Düzen, 2012 Ağu
Genel örnek
UPDATE
A
SET
foo = B.bar
FROM
TableA A
JOIN
TableB B ON A.col1 = B.colx
WHERE
...
Bunu Paylaş:
Nasıl bir sorgu dizesi kullanarak Kapi...
Sütun kullanarak MySQL sorgu tümcesi b...
Nasıl GQL varlık tuşunu kullanarak sor...
Bir NTP Sunucusu C kullanarak Sorgu na...
FARKLI ve bir arada kullanarak bir MyS...