Cara mengganti beberapa karakter pada sebuah string di SQL Server menggunakan fungsi REPLACE
Pada satu kasus yang saya hadapi membutuhkan perubahan data NIM (Nomor Induk Mahasiswa) karena data kode program studi yang digunakan sebelumnya salah sehingga perlu penyesuaian pada NIM. Ini terjadi pada mahasiswa baru pada angkatan tersebut, memang agak aneh jika NIM dirubah tetapi memang seperti itulah kebutuhannya.
Jadi pada kasus ini saya harus mengganti beberapa karakter pada sebuah string NIM. Setelah saya searching materi ternyata hal ini bisa dilakukan dengan menggunakan perintah REPLACE pada SQL Server.
Berikut adalah format NIM yang digunakan:
1762401036
- Dua karakter Pertama adalah tahun angkatan, 17 artinya mahasiswa angkatan tahun 2017
- Karakter ke tiga sampai ke tujuh adalah kode Program Studi, 62401 adalah kode program studi yang akan kita ganti nantinya
- Tiga karakter terakhir adalah sequence atau nomor urut untuk mahasiswa
[CREATE TABLE [dbo].[mahasiswa]( [mahasiswa_id] [int] IDENTITY(1,1) NOT NULL, [angkatan_id] [int] NULL, [prodi_id] [int] NULL, [nim] [varchar](50) NOT NULL, [nama] [varchar](50) NOT NULL, [alamat] [varchar](300) NULL, [no_telp] [varchar](50) NULL, CONSTRAINT [PK_mahasiswa] PRIMARY KEY CLUSTERED ( [mahasiswa_id] ASC )) ON [PRIMARY] GO]
Cara mengganti karakter pada string di SQL Server
Berikut adalah query yang saya gunakan untuk mengganti data NIM mahasiswa tersebut:[update mahasiswa set nim=REPLACE(nim, '62401', '62402') where prodi_id=10 and angkatan_id=8]
Perintah REPLACE pada SQL Server merupakan sebuah fungsi yang digunakan untuk mengganti karakter tertentu yang terdapat di dalam sebuah isi variabel string.
Jika query diatas dijalankan maka akan mengubah semua data nim yang memiliki string 62401 menjadi 62402 pada program studi dan angkatan yang telah ditentukan.
Semoga bermanfaat.
COMMENTS