Pada posting sebelumnya, mencari baris dari suatu tabel di database sql, kali ini
bagaimana menggunakan looping di sql
sintax dasar looping di sql menggunakan
WHILE
BEGIN
............PERITAH
END
ig : @sajuta_screenprint |
Contoh kasus nya disini saya akan melakukan update tabel seperti di posting sebelumnya
dengan tabel "test" kolom "cabang" , "email" , "cek"
disini saya akan update kolom "cek" berisi 4 huruf depan yang ada di kolom "email" sesuai data di baris masing. masing :
pertama mendeklarasikan variabel untuk mendapatkan indeks baris nya
dan buat variabel cabang berdasarkan indeks
DECLARE @index_baris INT
DECLARE @cabang VARCHAR(50)
kemudian set indeks nya dari baris ke 1
SET @index_baris = 1
Kemudian buat perulangan
WHILE @index_baris <= ( SELECT COUNT(cabang) FROM test )
BEGIN
SET @cabang =(
SELECT cabang FROM (
SELECT
ROW_NUMBER() OVER(ORDER BY cabang ASC) AS baris,cabang
FROM test
) AS cari
WHERE baris = @index_baris
)
UPDATE test SET cek = (SELECT LEFT(email,4) FROM test WHERE cabang = @cabang)
WHERE cabang = @cabang
SET @index_baris = (@index_baris + 1)
END
setelah query di eksekusi hasil nya seperti berikut :
Bagaimana jika yang di update hanya 3 baris pertama saja ? , atau baris ke 2 s/d ke 3 saja, silahkan di coba....
apabila ada cara yang lebih sederhana lagi silahkan di komentari.