Dapatkah kita menggunakan kueri pembaruan bergabung di mysql?

Kami memiliki tabel Geeks2 yang memiliki dua baris di mana Col 1 adalah 21 & 31 dan kami ingin memperbarui nilai dari tabel Geeks2 ke tabel Geeks1 untuk baris di mana Col 1 adalah 21 dan 31. Juga, kami ingin memperbarui nilai Col 2 dan Col 3 saja

Di versi terbaru MySQL, Anda dapat melakukan pembaruan tabel silang, juga dikenal sebagai pembaruan tabel korelasi di mana Anda dapat menggabungkan dua tabel atau lebih. Menggunakan query MySQL JOIN (INNER dan LEFT) dan UPDATE, kita dapat melakukan pembaruan lintas tabel dalam langkah yang sangat sederhana

Tutorial ini akan memandu Anda tentang cara melakukan pembaruan tabel silang MySQL menggunakan perintah asli MySQL

Sintaks Dasar

Sintaks umum untuk kueri gabungan pembaruan MySQL dasar adalah

UPDATE db. tabel1, db. Meja 2,

[GABUNG KIRI. INNER JOIN] db. table1 ON db. Tabel 1. kolom1 = db. Meja 2. kolom2

SET db. Tabel 1. kolom2 = db. Meja 2. kolom2, db. Meja 2. kolom3 = Ekspresi

DIMANA [kondisi]

Mari kita pecahkan kueri di atas menjadi bagian-bagian yang lebih kecil sehingga kita dapat memahaminya dengan lebih baik

Kita mulai dengan mendefinisikan tabel utama. Dalam hal ini, (db. table1) diikuti dengan tabel yang ingin kita gabungkan menggunakan pernyataan update, dalam hal ini, db. Meja 2

CATATAN. Penting untuk menentukan setidaknya satu tabel setelah pernyataan pembaruan;

Di bagian kedua kueri, kami menentukan jenis GABUNG tertentu yang ingin kami lakukan, mis. e. , INNER atau LEFT JOIN dan predikat gabungan. Selalu setel kueri GABUNG segera setelah kueri PEMBARUAN

Predikat gabungan adalah kondisi GABUNG khusus yang mengevaluasi ke nilai Boolean

Pada bagian berikut, kami menetapkan nilai baru ke kolom db. table1 dan db. Meja 2

Terakhir, kami menetapkan kondisi menggunakan klausa WHERE, yang membantu membatasi baris yang mengalami pembaruan

Contoh kasus penggunaan

Misalkan Anda memiliki dua tabel, disebut tb1 dan tb2;

BUAT DATABASE JIKA TIDAK ADA sample_db;

GUNAKAN sample_db;

BUAT TABEL tb1 (

col1 INT(11) BUKAN NULL,

col2 INT BUKAN NULL,

KUNCI UTAMA (col1)

);

BUAT TABEL tb2 (

col1 INT NOT NULL AUTO_INCREMENT,

col2 VARCHAR(100) BUKAN NULL,

col3 INT DEFAULT NULL,

col4 INT DEFAULT NULL,

KUNCI UTAMA (col1)

);

 

INSERT INTO tb1(col1, col2) NILAI(1,0), (2,1),(3,3),(4,4),(5,5);

INSERT INTO tb2(col2,col3,col4) NILAI ("Pertama", 1, 500),("Kedua", 2, 1000),("Ketiga", 3, 1500),("Keempat", 4, 2000)

Pada tabel yang dibuat menggunakan kueri di atas, kita dapat melakukan kueri pembaruan menggunakan pernyataan INNER JOIN karena tabel ditautkan pada col2

Pertimbangkan kueri di bawah ini

GUNAKAN sample_db;

UPDATE tb2 INNER JOIN tb1 ON tb2. kol3 = tb1. col1 SET col3 = col4 + col4 * 5;

Karena kita ingin mengupdate data pada tabel kedua (col3) dimana kita mendapatkan nilai kolom dan mengalikannya dengan 5, pada contoh di atas kita menghilangkan kondisi WHERE karena kita ingin mengupdate semua record pada tabel yang ditentukan.

Anda dapat mengonfirmasi ini menggunakan kueri pemilihan seperti yang ditunjukkan di bawah ini

PILIH * DARI sample_db. tb2;

Outputnya seperti yang ditunjukkan di bawah ini

mysql> PILIH * DARI sample_db. tb2;

+------+--------+-------+------+

col1. col2. col3. col4

+------+--------+-------+------+

1. Pertama. 3000. 500

2. Kedua. 6000. 1000

3. Ketiga. 9000. 1500

4. Keempat. 12000. 2000

5. Kelima. 15000. 2500

+------+--------+-------+------+

5 baris dalam set (0. 00 detik)

Kesimpulan

Dalam tutorial singkat ini, kita membahas cara menggunakan kueri gabungan pembaruan MySQL yang memungkinkan Anda menggabungkan tabel dan memperbarui nilai yang sesuai

Kami biasanya menggunakan joins untuk melewati baris dalam tabel tertentu yang memiliki atau mungkin tidak memiliki baris serupa di beberapa tabel lain. Kita dapat menggunakan klausa UPDATE Table_1, Table_2 SET Table_1.column_2 = Table_2.column_2, Table_2.column_3 = expr WHERE Table_1.column_1 = Table_2.column_1 AND condition _0 di samping pernyataan UPDATE Table_1, Table_2 SET Table_1.column_2 = Table_2.column_2, Table_2.column_3 = expr WHERE Table_1.column_1 = Table_2.column_1 AND condition 1 untuk mengimplementasikan beberapa pembaruan tabel

Sintaks dasar MySQL UPDATE JOIN dapat digambarkan sebagai berikut

UPDATE Table_1, Table_2, [INNER JOIN] Table_1 ON Table_1.Column_1 = Table_2. Column_1 SET Table_1.Column_2 = Table_2.Column_2, Table_2.Column_3 = expression WHERE condition

Sintaks di atas berfungsi sebagai berikut untuk tabel tertentu di MySQL

  • Kami memulai pekerjaan kami dengan menentukan tabel utama yang disebut UPDATE Table_1, Table_2 SET Table_1.column_2 = Table_2.column_2, Table_2.column_3 = expr WHERE Table_1.column_1 = Table_2.column_1 AND condition 3 dan tabel yang ingin kami gabungkan dengan tabel utama sebagai UPDATE Table_1, Table_2 SET Table_1.column_2 = Table_2.column_2, Table_2.column_3 = expr WHERE Table_1.column_1 = Table_2.column_1 AND condition 4. Tabel yang disebutkan dalam klausa UPDATE Table_1, Table_2 SET Table_1.column_2 = Table_2.column_2, Table_2.column_3 = expr WHERE Table_1.column_1 = Table_2.column_1 AND condition _1 diperbarui, dan data dalam tabel yang tidak disebutkan setelah klausa UPDATE Table_1, Table_2 SET Table_1.column_2 = Table_2.column_2, Table_2.column_3 = expr WHERE Table_1.column_1 = Table_2.column_1 AND condition 1 tidak akan diubah
  • Setelah kami melakukannya, kami harus menyebutkan jenis gabungan yang ingin kami gunakan. Dalam sintaks di atas, kami telah menggunakan gabungan UPDATE Table_1, Table_2 SET Table_1.column_2 = Table_2.column_2, Table_2.column_3 = expr WHERE Table_1.column_1 = Table_2.column_1 AND condition 7. Penggabungan ini harus dilakukan segera setelah klausa UPDATE Table_1, Table_2 SET Table_1.column_2 = Table_2.column_2, Table_2.column_3 = expr WHERE Table_1.column_1 = Table_2.column_1 AND condition 1
  • Setelah memberikan nilai ke kolom yang ingin kami perbarui, kami menyebutkan klausa UPDATE Table_1, Table_2 SET Table_1.column_2 = Table_2.column_2, Table_2.column_3 = expr WHERE Table_1.column_1 = Table_2.column_1 AND condition 9 untuk menentukan kondisi tertentu untuk pembaruan

Ada satu lagi cara menggunakan metode ini yang dapat diilustrasikan sebagai berikut

UPDATE Table_1, Table_2 SET Table_1.column_2 = Table_2.column_2, Table_2.column_3 = expr WHERE Table_1.column_1 = Table_2.column_1 AND condition

Sebelum kita mulai, mari kita buat dua tabel untuk dikerjakan. Kami akan memanggil tabel ini CREATE TABLE marks ( performance INT(11) NOT NULL, percentage FLOAT NOT NULL, PRIMARY KEY (performance) ); CREATE TABLE student_details ( stu_id INT(11) NOT NULL AUTO_INCREMENT, stu_name VARCHAR(255) NOT NULL, performance INT(11) DEFAULT NULL, total FLOAT DEFAULT NULL, PRIMARY KEY (emp_id), CONSTRAINT fk_performance FOREIGN KEY (performance) REFERENCES marks (performance) ); INSERT INTO marks(performance,percentage) VALUES(1,0), (2,0.01), (3,0.03), (4,0.05), (5,0.08); INSERT INTO student_details(stu_name,performance,total) VALUES('Preet Sanghavi', 1, 50000), ('Joe Sand', 3, 65000), ('Su Greens', 4, 75000), ('Gray Dellop', 5, 125000), ('Neon Jonty', 3, 85000), ('Peter Foe', 2, 45000), ('Little Wayne', 3, 55000); _0 dan CREATE TABLE marks ( performance INT(11) NOT NULL, percentage FLOAT NOT NULL, PRIMARY KEY (performance) ); CREATE TABLE student_details ( stu_id INT(11) NOT NULL AUTO_INCREMENT, stu_name VARCHAR(255) NOT NULL, performance INT(11) DEFAULT NULL, total FLOAT DEFAULT NULL, PRIMARY KEY (emp_id), CONSTRAINT fk_performance FOREIGN KEY (performance) REFERENCES marks (performance) ); INSERT INTO marks(performance,percentage) VALUES(1,0), (2,0.01), (3,0.03), (4,0.05), (5,0.08); INSERT INTO student_details(stu_name,performance,total) VALUES('Preet Sanghavi', 1, 50000), ('Joe Sand', 3, 65000), ('Su Greens', 4, 75000), ('Gray Dellop', 5, 125000), ('Neon Jonty', 3, 85000), ('Peter Foe', 2, 45000), ('Little Wayne', 3, 55000); 1. Tabel ini dapat dibuat dengan kode berikut

CREATE TABLE marks ( performance INT(11) NOT NULL, percentage FLOAT NOT NULL, PRIMARY KEY (performance) ); CREATE TABLE student_details ( stu_id INT(11) NOT NULL AUTO_INCREMENT, stu_name VARCHAR(255) NOT NULL, performance INT(11) DEFAULT NULL, total FLOAT DEFAULT NULL, PRIMARY KEY (emp_id), CONSTRAINT fk_performance FOREIGN KEY (performance) REFERENCES marks (performance) ); INSERT INTO marks(performance,percentage) VALUES(1,0), (2,0.01), (3,0.03), (4,0.05), (5,0.08); INSERT INTO student_details(stu_name,performance,total) VALUES('Preet Sanghavi', 1, 50000), ('Joe Sand', 3, 65000), ('Su Greens', 4, 75000), ('Gray Dellop', 5, 125000), ('Neon Jonty', 3, 85000), ('Peter Foe', 2, 45000), ('Little Wayne', 3, 55000);

Untuk memvisualisasikan tabel CREATE TABLE marks ( performance INT(11) NOT NULL, percentage FLOAT NOT NULL, PRIMARY KEY (performance) ); CREATE TABLE student_details ( stu_id INT(11) NOT NULL AUTO_INCREMENT, stu_name VARCHAR(255) NOT NULL, performance INT(11) DEFAULT NULL, total FLOAT DEFAULT NULL, PRIMARY KEY (emp_id), CONSTRAINT fk_performance FOREIGN KEY (performance) REFERENCES marks (performance) ); INSERT INTO marks(performance,percentage) VALUES(1,0), (2,0.01), (3,0.03), (4,0.05), (5,0.08); INSERT INTO student_details(stu_name,performance,total) VALUES('Preet Sanghavi', 1, 50000), ('Joe Sand', 3, 65000), ('Su Greens', 4, 75000), ('Gray Dellop', 5, 125000), ('Neon Jonty', 3, 85000), ('Peter Foe', 2, 45000), ('Little Wayne', 3, 55000); 0, kami menggunakan kode berikut

SELECT * FROM student_details;

Kode di atas akan memberikan output berikut

stu_id stu_name stu_performance total 1 Preet Sanghavi 1 50000 2 Joe Sand 3 65000 3 Su Greens 4 75000 4 Gray Dellop 5 125000 5 Neon Jonty 3 85000 6 Peter Foe 2 45000 7 Little Wayne 3 55000

Demikian pula, kita dapat memvisualisasikan tabel CREATE TABLE marks ( performance INT(11) NOT NULL, percentage FLOAT NOT NULL, PRIMARY KEY (performance) ); CREATE TABLE student_details ( stu_id INT(11) NOT NULL AUTO_INCREMENT, stu_name VARCHAR(255) NOT NULL, performance INT(11) DEFAULT NULL, total FLOAT DEFAULT NULL, PRIMARY KEY (emp_id), CONSTRAINT fk_performance FOREIGN KEY (performance) REFERENCES marks (performance) ); INSERT INTO marks(performance,percentage) VALUES(1,0), (2,0.01), (3,0.03), (4,0.05), (5,0.08); INSERT INTO student_details(stu_name,performance,total) VALUES('Preet Sanghavi', 1, 50000), ('Joe Sand', 3, 65000), ('Su Greens', 4, 75000), ('Gray Dellop', 5, 125000), ('Neon Jonty', 3, 85000), ('Peter Foe', 2, 45000), ('Little Wayne', 3, 55000); 1

Kode di atas akan memberikan output berikut

performance percentage 1 0 2 0.01 3 0.03 4 0.05 5 0.08

Seperti yang dapat kita lihat dari blok kode di atas, nilai persentase ada di tabel CREATE TABLE marks ( performance INT(11) NOT NULL, percentage FLOAT NOT NULL, PRIMARY KEY (performance) ); CREATE TABLE student_details ( stu_id INT(11) NOT NULL AUTO_INCREMENT, stu_name VARCHAR(255) NOT NULL, performance INT(11) DEFAULT NULL, total FLOAT DEFAULT NULL, PRIMARY KEY (emp_id), CONSTRAINT fk_performance FOREIGN KEY (performance) REFERENCES marks (performance) ); INSERT INTO marks(performance,percentage) VALUES(1,0), (2,0.01), (3,0.03), (4,0.05), (5,0.08); INSERT INTO student_details(stu_name,performance,total) VALUES('Preet Sanghavi', 1, 50000), ('Joe Sand', 3, 65000), ('Su Greens', 4, 75000), ('Gray Dellop', 5, 125000), ('Neon Jonty', 3, 85000), ('Peter Foe', 2, 45000), ('Little Wayne', 3, 55000); 1, dan kita harus menggunakan UPDATE JOIN dengan CREATE TABLE marks ( performance INT(11) NOT NULL, percentage FLOAT NOT NULL, PRIMARY KEY (performance) ); CREATE TABLE student_details ( stu_id INT(11) NOT NULL AUTO_INCREMENT, stu_name VARCHAR(255) NOT NULL, performance INT(11) DEFAULT NULL, total FLOAT DEFAULT NULL, PRIMARY KEY (emp_id), CONSTRAINT fk_performance FOREIGN KEY (performance) REFERENCES marks (performance) ); INSERT INTO marks(performance,percentage) VALUES(1,0), (2,0.01), (3,0.03), (4,0.05), (5,0.08); INSERT INTO student_details(stu_name,performance,total) VALUES('Preet Sanghavi', 1, 50000), ('Joe Sand', 3, 65000), ('Su Greens', 4, 75000), ('Gray Dellop', 5, 125000), ('Neon Jonty', 3, 85000), ('Peter Foe', 2, 45000), ('Little Wayne', 3, 55000); 6 sebagai gabungan utama kita untuk menyesuaikan CREATE TABLE marks ( performance INT(11) NOT NULL, percentage FLOAT NOT NULL, PRIMARY KEY (performance) ); CREATE TABLE student_details ( stu_id INT(11) NOT NULL AUTO_INCREMENT, stu_name VARCHAR(255) NOT NULL, performance INT(11) DEFAULT NULL, total FLOAT DEFAULT NULL, PRIMARY KEY (emp_id), CONSTRAINT fk_performance FOREIGN KEY (performance) REFERENCES marks (performance) ); INSERT INTO marks(performance,percentage) VALUES(1,0), (2,0.01), (3,0.03), (4,0.05), (5,0.08); INSERT INTO student_details(stu_name,performance,total) VALUES('Preet Sanghavi', 1, 50000), ('Joe Sand', 3, 65000), ('Su Greens', 4, 75000), ('Gray Dellop', 5, 125000), ('Neon Jonty', 3, 85000), ('Peter Foe', 2, 45000), ('Little Wayne', 3, 55000); 7 dari setiap siswa di tabel CREATE TABLE marks ( performance INT(11) NOT NULL, percentage FLOAT NOT NULL, PRIMARY KEY (performance) ); CREATE TABLE student_details ( stu_id INT(11) NOT NULL AUTO_INCREMENT, stu_name VARCHAR(255) NOT NULL, performance INT(11) DEFAULT NULL, total FLOAT DEFAULT NULL, PRIMARY KEY (emp_id), CONSTRAINT fk_performance FOREIGN KEY (performance) REFERENCES marks (performance) ); INSERT INTO marks(performance,percentage) VALUES(1,0), (2,0.01), (3,0.03), (4,0.05), (5,0.08); INSERT INTO student_details(stu_name,performance,total) VALUES('Preet Sanghavi', 1, 50000), ('Joe Sand', 3, 65000), ('Su Greens', 4, 75000), ('Gray Dellop', 5, 125000), ('Neon Jonty', 3, 85000), ('Peter Foe', 2, 45000), ('Little Wayne', 3, 55000); 0 berdasarkan nilai CREATE TABLE marks ( performance INT(11) NOT NULL, percentage FLOAT NOT NULL, PRIMARY KEY (performance) ); CREATE TABLE student_details ( stu_id INT(11) NOT NULL AUTO_INCREMENT, stu_name VARCHAR(255) NOT NULL, performance INT(11) DEFAULT NULL, total FLOAT DEFAULT NULL, PRIMARY KEY (emp_id), CONSTRAINT fk_performance FOREIGN KEY (performance) REFERENCES marks (performance) ); INSERT INTO marks(performance,percentage) VALUES(1,0), (2,0.01), (3,0.03), (4,0.05), (5,0.08); INSERT INTO student_details(stu_name,performance,total) VALUES('Preet Sanghavi', 1, 50000), ('Joe Sand', 3, 65000), ('Su Greens', 4, 75000), ('Gray Dellop', 5, 125000), ('Neon Jonty', 3, 85000), ('Peter Foe', 2, 45000), ('Little Wayne', 3, 55000); 9 dan

Penting untuk dicatat bahwa penghubung antara dua tabel, CREATE TABLE marks ( performance INT(11) NOT NULL, percentage FLOAT NOT NULL, PRIMARY KEY (performance) ); CREATE TABLE student_details ( stu_id INT(11) NOT NULL AUTO_INCREMENT, stu_name VARCHAR(255) NOT NULL, performance INT(11) DEFAULT NULL, total FLOAT DEFAULT NULL, PRIMARY KEY (emp_id), CONSTRAINT fk_performance FOREIGN KEY (performance) REFERENCES marks (performance) ); INSERT INTO marks(performance,percentage) VALUES(1,0), (2,0.01), (3,0.03), (4,0.05), (5,0.08); INSERT INTO student_details(stu_name,performance,total) VALUES('Preet Sanghavi', 1, 50000), ('Joe Sand', 3, 65000), ('Su Greens', 4, 75000), ('Gray Dellop', 5, 125000), ('Neon Jonty', 3, 85000), ('Peter Foe', 2, 45000), ('Little Wayne', 3, 55000); 0 dan CREATE TABLE marks ( performance INT(11) NOT NULL, percentage FLOAT NOT NULL, PRIMARY KEY (performance) ); CREATE TABLE student_details ( stu_id INT(11) NOT NULL AUTO_INCREMENT, stu_name VARCHAR(255) NOT NULL, performance INT(11) DEFAULT NULL, total FLOAT DEFAULT NULL, PRIMARY KEY (emp_id), CONSTRAINT fk_performance FOREIGN KEY (performance) REFERENCES marks (performance) ); INSERT INTO marks(performance,percentage) VALUES(1,0), (2,0.01), (3,0.03), (4,0.05), (5,0.08); INSERT INTO student_details(stu_name,performance,total) VALUES('Preet Sanghavi', 1, 50000), ('Joe Sand', 3, 65000), ('Su Greens', 4, 75000), ('Gray Dellop', 5, 125000), ('Neon Jonty', 3, 85000), ('Peter Foe', 2, 45000), ('Little Wayne', 3, 55000); 1, adalah kolom SELECT * FROM student_details; 0

Sekarang mari kita lihat pernyataan UPDATE JOIN_ beraksi

Kami dapat melakukan operasi pembaruan seperti yang dijelaskan di atas menggunakan kueri berikut

UPDATE student_details INNER JOIN marks ON student_details.performance = marks.performance SET total = total + total * percentage;

Di sini, tabel CREATE TABLE marks ( performance INT(11) NOT NULL, percentage FLOAT NOT NULL, PRIMARY KEY (performance) ); CREATE TABLE student_details ( stu_id INT(11) NOT NULL AUTO_INCREMENT, stu_name VARCHAR(255) NOT NULL, performance INT(11) DEFAULT NULL, total FLOAT DEFAULT NULL, PRIMARY KEY (emp_id), CONSTRAINT fk_performance FOREIGN KEY (performance) REFERENCES marks (performance) ); INSERT INTO marks(performance,percentage) VALUES(1,0), (2,0.01), (3,0.03), (4,0.05), (5,0.08); INSERT INTO student_details(stu_name,performance,total) VALUES('Preet Sanghavi', 1, 50000), ('Joe Sand', 3, 65000), ('Su Greens', 4, 75000), ('Gray Dellop', 5, 125000), ('Neon Jonty', 3, 85000), ('Peter Foe', 2, 45000), ('Little Wayne', 3, 55000); _0 adalah tabel utama di mana nilai CREATE TABLE marks ( performance INT(11) NOT NULL, percentage FLOAT NOT NULL, PRIMARY KEY (performance) ); CREATE TABLE student_details ( stu_id INT(11) NOT NULL AUTO_INCREMENT, stu_name VARCHAR(255) NOT NULL, performance INT(11) DEFAULT NULL, total FLOAT DEFAULT NULL, PRIMARY KEY (emp_id), CONSTRAINT fk_performance FOREIGN KEY (performance) REFERENCES marks (performance) ); INSERT INTO marks(performance,percentage) VALUES(1,0), (2,0.01), (3,0.03), (4,0.05), (5,0.08); INSERT INTO student_details(stu_name,performance,total) VALUES('Preet Sanghavi', 1, 50000), ('Joe Sand', 3, 65000), ('Su Greens', 4, 75000), ('Gray Dellop', 5, 125000), ('Neon Jonty', 3, 85000), ('Peter Foe', 2, 45000), ('Little Wayne', 3, 55000); 7 perlu diperbarui

Karena kita menghilangkan klausa UPDATE Table_1, Table_2 SET Table_1.column_2 = Table_2.column_2, Table_2.column_3 = expr WHERE Table_1.column_1 = Table_2.column_1 AND condition _9 dalam pernyataan UPDATE Table_1, Table_2 SET Table_1.column_2 = Table_2.column_2, Table_2.column_3 = expr WHERE Table_1.column_1 = Table_2.column_1 AND condition 1 dalam kueri yang disebutkan di atas, semua catatan dalam tabel CREATE TABLE marks ( performance INT(11) NOT NULL, percentage FLOAT NOT NULL, PRIMARY KEY (performance) ); CREATE TABLE student_details ( stu_id INT(11) NOT NULL AUTO_INCREMENT, stu_name VARCHAR(255) NOT NULL, performance INT(11) DEFAULT NULL, total FLOAT DEFAULT NULL, PRIMARY KEY (emp_id), CONSTRAINT fk_performance FOREIGN KEY (performance) REFERENCES marks (performance) ); INSERT INTO marks(performance,percentage) VALUES(1,0), (2,0.01), (3,0.03), (4,0.05), (5,0.08); INSERT INTO student_details(stu_name,performance,total) VALUES('Preet Sanghavi', 1, 50000), ('Joe Sand', 3, 65000), ('Su Greens', 4, 75000), ('Gray Dellop', 5, 125000), ('Neon Jonty', 3, 85000), ('Peter Foe', 2, 45000), ('Little Wayne', 3, 55000); 0 dapat diubah berdasarkan kondisi stu_id stu_name stu_performance total 1 Preet Sanghavi 1 50000 2 Joe Sand 3 65000 3 Su Greens 4 75000 4 Gray Dellop 5 125000 5 Neon Jonty 3 85000 6 Peter Foe 2 45000 7 Little Wayne 3 55000 1

Keluaran dari kueri yang disebutkan di atas akan memberikan hasil sebagai berikut

stu_id stu_name stu_performance total 1 Preet Sanghavi 1 50000 2 Joe Sand 3 66950 3 Su Greens 4 78750 4 Gray Dellop 5 135000 5 Neon Jonty 3 87550 6 Peter Foe 2 45450 7 Little Wayne 3 56650

Seperti yang dapat kita lihat pada blok kode di atas, CREATE TABLE marks ( performance INT(11) NOT NULL, percentage FLOAT NOT NULL, PRIMARY KEY (performance) ); CREATE TABLE student_details ( stu_id INT(11) NOT NULL AUTO_INCREMENT, stu_name VARCHAR(255) NOT NULL, performance INT(11) DEFAULT NULL, total FLOAT DEFAULT NULL, PRIMARY KEY (emp_id), CONSTRAINT fk_performance FOREIGN KEY (performance) REFERENCES marks (performance) ); INSERT INTO marks(performance,percentage) VALUES(1,0), (2,0.01), (3,0.03), (4,0.05), (5,0.08); INSERT INTO student_details(stu_name,performance,total) VALUES('Preet Sanghavi', 1, 50000), ('Joe Sand', 3, 65000), ('Su Greens', 4, 75000), ('Gray Dellop', 5, 125000), ('Neon Jonty', 3, 85000), ('Peter Foe', 2, 45000), ('Little Wayne', 3, 55000); 7 dari setiap siswa diperbarui berdasarkan SELECT * FROM student_details; 0 di tabel CREATE TABLE marks ( performance INT(11) NOT NULL, percentage FLOAT NOT NULL, PRIMARY KEY (performance) ); CREATE TABLE student_details ( stu_id INT(11) NOT NULL AUTO_INCREMENT, stu_name VARCHAR(255) NOT NULL, performance INT(11) DEFAULT NULL, total FLOAT DEFAULT NULL, PRIMARY KEY (emp_id), CONSTRAINT fk_performance FOREIGN KEY (performance) REFERENCES marks (performance) ); INSERT INTO marks(performance,percentage) VALUES(1,0), (2,0.01), (3,0.03), (4,0.05), (5,0.08); INSERT INTO student_details(stu_name,performance,total) VALUES('Preet Sanghavi', 1, 50000), ('Joe Sand', 3, 65000), ('Su Greens', 4, 75000), ('Gray Dellop', 5, 125000), ('Neon Jonty', 3, 85000), ('Peter Foe', 2, 45000), ('Little Wayne', 3, 55000); 1

Bisakah saya menggunakan gabung dalam kueri UPDATE?

Cara yang paling mudah dan umum adalah menggunakan klausa gabungan dalam pernyataan pembaruan dan menggunakan beberapa tabel dalam pernyataan pembaruan . Di sini kita dapat melihat bahwa menggunakan klausa gabungan dalam pernyataan pembaruan. Kami telah menggabungkan dua tabel dengan menggunakan klausa gabungan.

Bisakah kita menggunakan inner join dalam pernyataan UPDATE MySQL?

MySQL Update Join digunakan untuk mengeksekusi pernyataan update bersama dengan implementasi klausa MySQL INNER JOIN dan LEFT JOIN di server . Klausa Perbarui BERGABUNG di MySQL ini membantu mengambil catatan data dari tabel database terkait bersama dengan memodifikasinya dengan kueri.

Bagaimana cara MEMPERBARUI tabel menggunakan join di MySQL?

JOIN clause di MySQL digunakan dalam pernyataan untuk mengambil data dengan menggabungkan beberapa tabel dalam satu kueri. .
PERBARUI Tab1, Tab2,
SET Tab1. C2 = Tab2. C2, Tab2. C3 = ekspresi
DI MANA Tab1. C1 = Tab2. C1 DAN kondisi;

Bagaimana cara menggunakan gabungan dalam dalam kueri UPDATE di SQL Server?

Sintaks GABUNG PEMBARUAN SQL Server . Pertama, tentukan nama tabel (t1) yang ingin Anda perbarui di klausa UPDATE. Selanjutnya, tentukan nilai baru untuk setiap kolom tabel yang diperbarui. Kemudian, tentukan lagi tabel yang ingin Anda perbarui di klausa FROM

Postingan terbaru

LIHAT SEMUA