Update tabel dari tabel yang sama..

Misal kita ingin mengupdate beberapa baris dari tabel yang sama. Dari data source yang dimiliki, ada basisdata: db1, schema: schema1, dan tabel: table1.
Pada kasus ini kita ingin meng-update kolom SandiIntegrasi yang memiliki SandiLocal yang sama dari tabel table1. Sebagai gambaran, lihat query dan hasilnya,

Query 1:
SELECT [SandiIntegrasi]
,[SandiLocal]
FROM [db1].[schema1].[table1]
where GroupSandi = ‘Komputer’ and Source = ‘BlogA’

Query 2:
SELECT [SandiIntegrasi]
,[SandiLocal]
FROM [db1].[schema1].[table1]
where GroupSandi = ‘Komputer’ and Source = ‘BlogB’

Dari hasil di atas, terlihat SandiIntegrasi dari query1 dan query2 berbeda. Karena suatu kebutuhan, kita ingin menyamakan nilai SandiIntegrasi kedua hasil tersebut. Nilai SandiIntegrasi yang sourcenya ‘BlogB’ akan diupdate dengan nilai SandiIntegrasi dari soure ‘BlogA’..
Nah, berikut query untuk meng-update nilai SandiIntegrasi BlogB..

update [db1].[schema1].[table1]
set SandiIntegrasi=s.SandiIntegrasi
from
(SELECT [SandiIntegrasi],[SandiLocal]
FROM [db1].[schema1].[table1]
where GroupSandi = ‘Komputer’ and Source = ‘BlogA’) s
inner join [db1].[schema1].[table1] r on s.SandiLocal=r.SandiLocal
where  GroupSandi = ‘Komputer ‘ and Source = ‘BlogB’




    Leave a Reply

    Fill in your details below or click an icon to log in:

    WordPress.com Logo

    You are commenting using your WordPress.com account. Log Out / Change )

    Twitter picture

    You are commenting using your Twitter account. Log Out / Change )

    Facebook photo

    You are commenting using your Facebook account. Log Out / Change )

    Google+ photo

    You are commenting using your Google+ account. Log Out / Change )

    Connecting to %s



%d bloggers like this: