Bagaimana cara memperbarui dari pilih di mysql?

Tutorial Ini Menjelaskan Pernyataan UPDATE MySQL Beserta Sintaks Kueri & Contoh. Anda Juga Akan Mempelajari Berbagai Variasi Perintah Tabel Pembaruan MySQL

Seperti database lainnya, kami selalu memiliki kebutuhan untuk memperbarui atau memodifikasi atau mengubah data yang ada di tabel. Di MySQL, kami memiliki pernyataan UPDATE yang dapat digunakan untuk memperbarui atau mengubah data dalam tabel

Dengan menggunakan perintah ini, kita dapat memperbarui satu atau banyak kolom. Kami dapat memperbarui nilai tabel tertentu sekaligus. Dengan menggunakan klausa WHERE kita dapat menentukan kondisi yang digunakan terutama ketika ada kebutuhan untuk memperbarui baris tertentu dari sebuah tabel

=> Klik di sini untuk seri tutorial MySQL lengkap

Bagaimana cara memperbarui dari pilih di mysql?

Sebelum melanjutkan, perlu diketahui, bahwa kita menggunakan MySQL versi 8. 0. Anda dapat mengunduhnya dari sini

Apa yang Akan Anda Pelajari

Sintaks Tabel PEMBARUAN MySQL

UPDATE table_name SET column1 = new_value1, column2 = new_value2, ...
        WHERE condition;

Penjelasan Sintaks

  • Sintaks dimulai dengan kata kunci "UPDATE", sehingga memberi tahu Server MySQL tentang jenis aktivitas yang akan dilakukan. Ini adalah kata kunci wajib dan tidak dapat dihilangkan
  • Berikutnya adalah nama tabel tempat tindakan pembaruan harus dilakukan. Ini wajib dan tidak bisa diabaikan
  • Ketiga, lagi-lagi kata kunci – SET. Kata kunci ini memberi tahu Server MySQL tentang nilai yang akan diperbarui untuk nama kolom. Ini adalah kata kunci wajib dan tidak dapat dihilangkan
  • Selanjutnya, akan ada nama kolom yang akan diperbarui bersama dengan nilainya yang sesuai. Ini juga wajib dan tidak bisa diabaikan
  • Kemudian muncul kondisi WHERE, yang membatasi atau memfilter jumlah baris target tempat tindakan UPDATE harus diterapkan. WHERE juga merupakan kata kunci, tetapi opsional

Namun, klausa WHERE signifikan. Jika tidak disebutkan, atau jika kondisinya tidak diatur dengan benar maka baik tabel maupun baris yang tidak diperlukan tidak akan diperbarui

Pengubah Dalam Pernyataan Tabel UPDATE

Daftar di bawah ini adalah pengubah dalam pernyataan UPDATE

PRIORITAS RENDAH. Pengubah ini memberi tahu Mesin MySQL untuk menunda pembaruan hingga tidak ada koneksi yang membaca dari tabel

MENGABAIKAN. Pengubah ini menginformasikan Mesin MySQL untuk melanjutkan operasi UPDATE meskipun ada kesalahan. Tidak ada tindakan pembaruan yang dilakukan pada baris yang menyebabkan kesalahan

Contoh PEMBARUAN MySQL

Diberikan di bawah ini adalah contoh tabel yang dibuat di MySQL

Nama Skema. Pasifik
Nama Tabel. karyawan
Nama Kolom

  • empNum – Menyimpan nilai bilangan bulat untuk nomor karyawan
  • lastName – Menyimpan nilai varchar untuk nama belakang karyawan
  • firstName – Menyimpan nilai varchar untuk nama depan karyawan
  • email – Menyimpan nilai varchar untuk ID email karyawan
  • deptNum – Menyimpan varchar untuk ID departemen milik karyawan
  • gaji – Memegang nilai desimal gaji untuk setiap karyawan

Bagaimana cara memperbarui dari pilih di mysql?

Nama Skema. Pasifik
Nama Tabel. departemen
Nama Kolom

  • deptNum – Menyimpan varchar untuk ID departemen dalam suatu organisasi
  • kota – Menyimpan nama kota tempat departemen bekerja
  • negara – Memegang nama negara yang sesuai dengan kota
  • bonus – Menyimpan nilai persentase bonus

Bagaimana cara memperbarui dari pilih di mysql?

Perintah Tabel PEMBARUAN MySQL

#1) MySQL Memperbarui Kolom Tunggal

Sekarang, mari cari catatan yang ingin kita perbarui. Pertama, kita akan melihat skenario di mana kita harus memperbarui satu kolom menggunakan kata kunci UPDATE

Ini adalah karyawan dengan nomor karyawan 1008

Kueri dan hasil terkaitnya adalah sebagai berikut

Bagaimana cara memperbarui dari pilih di mysql?

Mari perbarui ID email karyawan ini dari ob@gmail. com ke oliver. bailey@gmail. com, menggunakan kata kunci UPDATE

MEMPERBARUI. Kata kunci memberi tahu mesin MySQL bahwa pernyataannya adalah tentang Memperbarui tabel
MENGATUR. Klausa ini menetapkan nilai nama kolom yang disebutkan setelah kata kunci ini ke nilai baru
DI MANA. Klausa ini menentukan baris tertentu yang harus diperbarui

Bagaimana cara memperbarui dari pilih di mysql?

Pasca mengeksekusi pernyataan UPDATE, output akan menampilkan statistik yang terkait dengan eksekusi pernyataan

Berikut detail yang ditampilkan

  • Pernyataan yang dieksekusi
  • Pesan yang menunjukkan jumlah baris yang diperbarui dan jika ada peringatan

Untuk memverifikasi output dari pernyataan UPDATE, mari jalankan kembali pernyataan SELECT untuk melihat perubahan pada ID email

Bagaimana cara memperbarui dari pilih di mysql?

Cuplikan Tabel Sebelumnya

empNumfirstNamelastNameemaildeptNum1008OliverBaileyob@gmail. com3

Pertanyaan

UPDATE employees
   SET email = “[email protected]”
 WHERE empNum = 1008
   AND email = “[email protected]”
;
_

Cuplikan Tabel Setelah

empNumfirstNamelastNameemaildeptNum1008OliverBaileyoliver. bailey@gmail. com3

#2) Perbarui Beberapa Kolom MySQL

Sintaks untuk memperbarui lebih dari satu kolom menggunakan pernyataan UPDATE sama dengan memperbarui satu kolom. Satu pernyataan SET tunggal akan memiliki banyak nama kolom bersama dengan nilai barunya yang harus ditetapkan, dipisahkan dengan koma

Mari kita lihat baris yang perlu kita perbarui. Baris dengan nomor karyawan sebagai 1003

Bagaimana cara memperbarui dari pilih di mysql?

Di sini, kami akan mencoba memperbarui nama belakang dari "Mary" menjadi "Margaret" dan kemudian ID email dari ml@gmail. com ke margaret. langaley@gmail. com

Berikut ini adalah kueri UPDATE. Amati nama kolom yang dipisahkan dengan koma

Bagaimana cara memperbarui dari pilih di mysql?

Keluaran dari eksekusi di atas menunjukkan statistik yang sama seperti pada kasus sebelumnya

Berikut adalah output untuk record yang sama setelah eksekusi pernyataan UPDATE

Bagaimana cara memperbarui dari pilih di mysql?

Cuplikan Tabel Sebelumnya

empNumfirstNamelastNameemaildeptNum1003MaryLangleyml@gmail. com2

Pertanyaan

UPDATE employees
   SET firstName = “Margaret”,
	 email = “[email protected]”
 WHERE empNum = 1003
   AND firstName = “Mary”
   AND email = “[email protected]”
;

Cuplikan Tabel Setelah

empNumfirstNamelastNameemaildeptNum1003MargaretLangleymargaret. langley@gmail. com3

#3) Pembaruan MySQL Dengan Fungsi REPLACE

Mari kita lihat lebih lanjut tentang menggunakan fungsi REPLACE untuk MEMPERBARUI baris dalam tabel. Inilah catatan target kami yang ingin kami perbarui

Catatan di bawah ini adalah untuk nomor karyawan 1010. Kami akan menargetkan untuk memperbarui ID email dari ja@gmail. com ke jacob. armstrong@gmail. com

Bagaimana cara memperbarui dari pilih di mysql?

Mari gunakan kueri UPDATE berikut dengan fungsi REPLACE yang akan memperbarui ID email

Bagaimana cara memperbarui dari pilih di mysql?

Berikut ini adalah parameter yang dilewatkan dalam fungsi REPLACE. Semua 3 parameter bersifat posisi i. e. urutan parameter tidak dapat diubah

Parameter 1 – Berisi nama ID email
Parameter ke-2 – Berisi FROM email ID yang akan diubah
Parameter ke-3 – Berisi ID email TO yang merupakan nilai baru

Berikut adalah snapshot dari tabel pasca-eksekusi pernyataan UPDATE

Bagaimana cara memperbarui dari pilih di mysql?

Cuplikan Tabel Sebelumnya

empNumfirstNamelastNameemaildeptNum1010JacobArmstrongja@gmail. com4

Pertanyaan

UPDATE employees
   SET email = REPLACE(email, “[email protected]”, [email protected])
 WHERE empNum = 1010
;

Cuplikan Tabel Setelah

empNumfirstNamelastNameemaildeptNum1010JacobArmstrongjacob. armstrong@gmail. com4

#4) PEMBARUAN MySQL Menggunakan Pernyataan SELECT

Dalam tipe UPDATE ini, nilai baru untuk kolom yang akan diperbarui diambil oleh pernyataan SELECT dalam subquery. Jadi, mari kita ambil contoh di sini dari tabel "karyawan" kita. Inilah catatan target kami yang ingin kami perbarui

Bagaimana cara memperbarui dari pilih di mysql?

Bagaimana cara memperbarui dari pilih di mysql?

Dalam hal ini, kami akan memperbarui nomor departemen i. e. kolom deptNum, menggunakan tabel departemen. Jika kita melihat tabel departemen, deptNum = 5 sesuai dengan Berlin. Mari pindahkan karyawan ini ke Charlotte di deptNum = 2

Untuk mencapai tugas ini, pernyataan UPDATE berikut digunakan

Bagaimana cara memperbarui dari pilih di mysql?

Untuk memverifikasi output dari pernyataan UPDATE kami, mari jalankan pernyataan SELECT

Bagaimana cara memperbarui dari pilih di mysql?

Seperti yang ditunjukkan di atas, nilai kolom deptNum telah diperbarui menjadi “2”

Cuplikan Tabel Sebelumnya

empNumfirstNamelastNameemaildeptNum1005PeterLeepl@gmail. com5

deptNumCityCountry1New YorkUnited States2CharlotteUnited States3ChicagoUnited States4LondonEngland5BerlinGermany6MumbaiIndia7RomeItaly

Pertanyaan

<UPDATE employees
   SET deptNum = (SELECT deptNum
	            FROM departments
                    WHERE city = "Charlotte"
		 )
   WHERE empNum = 1005
 ;
_

Cuplikan Tabel Setelah

empNumfirstNamelastNameemaildeptNum1005PeterLeepl@gmail. com2

#5) UPDATE MySQL Beberapa Baris

Terkadang, kami mungkin menghadapi persyaratan di mana kami harus memperbarui satu atau beberapa kolom untuk beberapa baris dengan nilai yang berbeda

Misalnya, kami ingin memberikan sejumlah bonus departemen bijaksana i. e. semua karyawan di departemen harus mendapatkan sejumlah bonus tertentu

Sintaks umumnya adalah sebagai berikut

 UPDATE TAB1 
       SET COL2 = CASE 
		  WHEN condition1 THEN value1 
		  WHEN condition2 THEN value2 
		  …. 
		  ELSE result1 
       END; 

Untuk menjelaskan hal ini dengan sebuah contoh, mari tambahkan satu kolom lagi ke tabel departemen. Kami akan menambahkan kolom "bonus" ke tabel departemen. Idenya adalah untuk menetapkan persentase bonus untuk setiap departemen dan menaikkan gaji karyawan dengan persentase yang sesuai dengan masing-masing departemen

Untuk mencapai ini, kami akan menjalankan pernyataan ALTER berikut untuk menambahkan kolom

ALTER TABLE departments ADD COLUMN bonus decimal(5,2);
_

Berikut ini adalah struktur tabel setelah perubahan di atas. Kolom baru akan ditambahkan dengan NULL sebagai nilai

Bagaimana cara memperbarui dari pilih di mysql?

Selanjutnya, mari tulis kueri UPDATE yang akan memperbarui persentase bonus untuk setiap departemen

Bagaimana cara memperbarui dari pilih di mysql?

Pasca eksekusi pernyataan di atas, berikut adalah snapshot dengan nilai yang diperbarui untuk kolom Bonus

Bagaimana cara memperbarui dari pilih di mysql?

Cuplikan Tabel Sebelumnya

deptNumCityCountryBonus1New YorkUnited StatesNULL2CharlotteUnited StatesNULL3ChicagoUnited StatesNULL4LondonEnglandNULL5BerlinGermanyNULL6MumbaiIndiaNULL7RomeItalyNULL

Pertanyaan

UPDATE departments
   SET bonus = CASE
	              WHEN deptNum = 1 THEN 3.00
                      WHEN deptNum= 2 THEN 5.00
                      WHEN deptNum= 3 THEN 8.00
                      WHEN deptNum= 4 THEN 10.00
                      WHEN deptNum= 5 THEN 13.00
                      WHEN deptNum= 6 THEN 15.00
                      WHEN deptNum= 7 THEN 18.00
   END;

Cuplikan Tabel Setelah

deptNumCityCountryBonus1New YorkUnited States32CharlotteUnited States53ChicagoUnited States84LondonEngland105BerlinGermany136MumbaiIndia157RomeItaly18

#6) UPDATE MySQL Menggunakan INNER JOIN Keyword

BERGABUNG adalah salah satu kata kunci terpenting dalam pernyataan SQL. Biasanya, Anda mungkin telah menggunakannya dalam pernyataan SELECT

Pada dasarnya ada empat jenis pernyataan GABUNG

  • GABUNG DALAM. Mengambil catatan yang umum di kedua tabel
  • GABUNG KIRI. Mengambil semua rekaman dari tabel di sisi kiri kata kunci dan rekaman yang cocok dari tabel di sisi kanan kata kunci
  • GABUNG KANAN. Mengambil semua rekaman dari tabel di sisi kanan kata kunci dan rekaman yang cocok dari tabel di sisi kiri kata kunci
  • GABUNG LUAR. Mengambil semua rekaman dari kedua tabel, dengan rekaman tidak cocok yang sesuai direpresentasikan sebagai NULL

MySQL memberikan kesempatan unik untuk menggunakan GABUNG bahkan dalam pernyataan UPDATE untuk melakukan pembaruan lintas tabel. Namun, itu terbatas hanya untuk INNER JOIN dan LEFT JOIN

Sintaks generik pernyataan UPDATE menggunakan kata kunci JOIN adalah sebagai berikut

UPDATE TAB1, TAB2,
     [INNER JOIN | LEFT JOIN] TAB1 ON TAB1.COL1 = TAB2.COL1
     SET TAB1.COL2 = TAB2.COL2,
                     TAB2.COL3 = expr
     WHERE condition
_
  • Di sini, pernyataan UPDATE mengharapkan tiga item data
  • Nama tabel, TAB1 dan TAB2, tempat penggabungan dilakukan
  • Jenis GABUNG yang ingin kami lakukan, INNER atau LEFT
  • Kemudian ikuti perintah SET yang dengannya kita dapat memperbarui nilai kolom di salah satu/atau TAB1 dan TAB2
  • Terakhir, klausa WHERE untuk memperbarui hanya baris yang sesuai dengan kriteria kami

Untuk menjelaskan hal ini dengan sebuah contoh, mari tambahkan satu kolom lagi ke tabel Karyawan. Kami akan menambahkan kolom "gaji" ke tabel Karyawan. Idenya adalah menaikkan gaji karyawan dengan nilai persentase bonus yang ada di kolom bonus tabel departemen

Untuk mencapai ini, kami akan menjalankan pernyataan ALTER berikut untuk menambahkan kolom

ALTER TABLE employees ADD COLUMN salarydecimal(7,2);
_

Selanjutnya, kita akan mengisi dua field baru yang telah kita tambahkan. Posting mengisi nilai-nilai, berikut adalah isi dari tabel

Tabel Karyawan

empNumfirstNamelastNameemaildeptNumSalary1001AndrewsJackja@gmail. com130001002SchwatzMikems@gmail. com150001003LangleyMargaretmargaret. langley@gmail. com280001004HareraSandrash@gmail. com1100001005LeePeterpl@gmail. com2130001006KeithJennyjk@gmail. com2150001007SchmittJamesjs@gmail. com4180001008BaileyOliveroliver. bailey@gmail. com3210001009BekerHarryhb@gmail. com5240001010ArmstrongJacobjacob. armstrong@gmail. com427000

Sekarang, mari gunakan kata kunci GABUNG dan perbarui gaji semua karyawan dengan persentase bonus di tabel departemen. Di sini, deptNum adalah kunci di mana kedua tabel akan dicocokkan

Berikut ini adalah snapshot dari gaji karyawan sampai sekarang

Bagaimana cara memperbarui dari pilih di mysql?

Snapshot dari tabel Departemen adalah sebagai berikut

Bagaimana cara memperbarui dari pilih di mysql?

Berikut query UPDATE yang akan mengupdate gaji karyawan berdasarkan persentase bonus pada tabel departemen berdasarkan kolom key deptNum

Bagaimana cara memperbarui dari pilih di mysql?

Sekarang, mari kita verifikasi gaji setiap karyawan setelah kenaikan gaji

Bagaimana cara memperbarui dari pilih di mysql?

Jika Anda membandingkannya dengan snapshot sebelumnya, Anda dapat dengan mudah memahami persentase bonus yang ditambahkan ke gaji

Semua karyawan harus bersorak

Cuplikan Tabel Sebelumnya

empNumfirstNamelastNameemaildeptNumSalary1001AndrewsJackja@gmail. com130001002SchwatzMikems@gmail. com150001003LangleyMargaretmargaret. langley@gmail. com280001004HareraSandrash@gmail. com1100001005LeePeterpl@gmail. com2130001006KeithJennyjk@gmail. com2150001007SchmittJamesjs@gmail. com4180001008BaileyOliveroliver. bailey@gmail. com3210001009BekerHarryhb@gmail. com5240001010ArmstrongJacobjacob. armstrong@gmail. com427000

deptNumCityCountryBonus1New YorkUnited States32CharlotteUnited States53ChicagoUnited States84LondonEngland105BerlinGermany136MumbaiIndia157RomeItaly18

Pertanyaan

UPDATE employees
   SET email = “[email protected]”
 WHERE empNum = 1008
   AND email = “[email protected]”
;
_0

Cuplikan Tabel Setelah

empNumfirstNamelastNameemaildeptNumSalary1001AndrewsJackja@gmail. com13182. 71002SchwatzMikems@gmail. com15304. 51003LangleyMargaretmargaret. langley@gmail. com288201004HareraSandrash@gmail. com1106091005LeePeterpl@gmail. com214332. 51006KeithJennyjk@gmail. com216537. 51007SchmittJamesjs@gmail. com4217801008BaileyOliveroliver. bailey@gmail. com324494. 41009BekerHarryhb@gmail. com530645. 61010ArmstrongJacobjacob. armstrong@gmail. com432670

#7) UPDATE MySQL Menggunakan Kata Kunci JOIN LEFT

Seperti yang sudah dijelaskan di bagian sebelumnya, ada dua jenis JOIN yang diperbolehkan di MySQL UPDATE. Kami telah melihat UPDATE menggunakan INNER JOIN

Mari kita mulai dengan UPDATE menggunakan LEFT JOIN

Contoh

Kami memiliki karyawan baru yang belum ditugaskan ke departemen mana pun. Tapi kami harus memberikan semua karyawan baru bonus 1%. Sekarang, karena pegawai baru tidak ditugaskan ke departemen mana pun, kami tidak akan bisa mendapatkan informasi persentase bonus apa pun dari tabel itu. Dalam kasus seperti itu, kami akan MEMPERBARUI gaji untuk karyawan baru menggunakan LEFT JOIN

Untuk mencapai ini, mari tambahkan karyawan baru ke database karyawan

UPDATE employees
   SET email = “[email protected]”
 WHERE empNum = 1008
   AND email = “[email protected]”
;
_1

Berikut ini adalah rekor baru yang telah kami tambahkan

Bagaimana cara memperbarui dari pilih di mysql?

Tabel Karyawan

empNumfirstNamelastNameemaildeptNumSalary1001AndrewsJackja@gmail. com131831002SchwatzMikems@gmail. com153051003LangleyMargaretmargaret. langley@gmail. com288201004HareraSandrash@gmail. com1106091005LeePeterpl@gmail. com2143331006KeithJennyjk@gmail. com2165381007SchmittJamesjs@gmail. com4217801008BaileyOliveroliver. bailey@gmail. com3244941009BekerHarryhb@gmail. com5306461010ArmstrongJacobjacob. armstrong@gmail. com4326701011HanksTomth@gmail. comNULL10000

Selanjutnya, kami akan memberikan Tom bonus sebesar 1% di atas gajinya menggunakan pernyataan UPDATE dengan klausa LEFT JOIN

Bagaimana cara memperbarui dari pilih di mysql?

Diberikan di bawah ini adalah gaji pasca kenaikan TOM

Bagaimana cara memperbarui dari pilih di mysql?

Jika Anda membandingkannya dengan snapshot sebelumnya, Anda dapat dengan mudah memahami persentase bonus yang ditambahkan ke gaji

Cuplikan Tabel Sebelumnya

empNumfirstNamelastNameemaildeptNumSalary1011TomHanksth@gmail. comNULL10000

Pertanyaan

UPDATE employees
   SET email = “[email protected]”
 WHERE empNum = 1008
   AND email = “[email protected]”
;
_2

Cuplikan Tabel Setelah

empNumfirstNamelastNameemaildeptNumSalary1011TomHanksth@gmail. comNULL10100

Bacaan yang Direkomendasikan =>> MySQL Bergabung

Pertanyaan dan Jawaban yang Sering Diajukan

T #1) Bagaimana cara memperbarui atribut di MySQL?

Menjawab. Kita dapat memperbarui atribut menggunakan pernyataan MySQL UPDATE, dengan pernyataan yang diawali dengan kata kunci UPDATE diikuti dengan nama tabel. Berikutnya adalah klausa SET diikuti dengan nama kolom dan klausa WHERE

T #2) Bagaimana Anda memperbarui banyak catatan di MySQL?

Menjawab. Seperti yang digambarkan di atas, di bawah bagian "Perbarui Beberapa Baris", kita dapat memperbarui banyak baris untuk satu atau lebih kolom dengan nilai yang sama atau berbeda menggunakan pernyataan CASE

T #3) Bisakah kita menggunakan GABUNG dalam permintaan Perbarui di MySQL?

Menjawab. Ya, MySQL mengizinkan penggunaan GABUNG dalam pernyataan UPDATE. Namun, itu dibatasi hanya untuk INNER dan LEFT JOIN

Bagaimana cara memperbarui data dengan SELECT di MySQL?

Pembaruan MySQL .
Pertama, tentukan nama tabel yang ingin Anda perbarui datanya setelah kata kunci UPDATE
Kedua, tentukan kolom mana yang ingin Anda perbarui dan nilai baru di klausa SET. .
Ketiga, tentukan baris mana yang akan diperbarui menggunakan kondisi di klausa WHERE

Bisakah kita melakukan pembaruan dari pernyataan SELECT?

PEMBARUAN dari struktur kueri SELECT adalah teknik utama untuk melakukan pembaruan ini . Permintaan UPDATE digunakan untuk mengubah baris atau baris yang ada dalam database. Kueri UPDATE dapat mengubah semua baris tabel, atau kita dapat membatasi pengaruh pernyataan pembaruan untuk baris tertentu dengan bantuan klausa WHERE.

Bagaimana Anda memperbarui tabel menggunakan pernyataan SELECT?

Anda dapat menggunakan pernyataan SELECT terlebih dahulu untuk mengambil kolom referensi dan nilai kolom target. Selanjutnya, Anda akan melakukan sedikit perubahan pada kueri Anda, dan ini akan menyiapkan pernyataan UPDATE seperti yang ditunjukkan di bawah ini. Ganti kata kunci pilih dengan perbarui. Tentukan nama tabel atau nama alias yang perlu diperbarui .

Bagaimana Anda memperbarui bidang tertentu di MySQL?

Perintah UPDATE MySQL dapat digunakan untuk memperbarui banyak kolom dengan menentukan daftar nama_kolom = nilai_baru yang dipisahkan koma . Di mana nama_kolom adalah nama kolom yang akan diperbarui dan nilai_baru adalah nilai baru yang akan digunakan untuk memperbarui kolom.