Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

อัปเดตตารางด้วยรหัสที่ซ้ำกันใน MySQL


ต่อไปนี้เป็นไวยากรณ์ -

update yourTableName set yourColumnName1=yourValue where yourColumnName2=yourValue order by yourColumnName2 DESC LIMIT 1;

ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable -> ( -> Id int, -> Name varchar(100) -> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.61 วินาที)

แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -

mysql> แทรกลงในค่า DemoTable (1,'John'); Query OK, 1 แถวได้รับผลกระทบ (0.41 วินาที)mysql> แทรกลงในค่า DemoTable (2,'Chris'); Query OK, 1 แถวได้รับผลกระทบ (0.15 วินาที )mysql> แทรกลงในค่า DemoTable (2, 'Robert'); Query OK, 1 แถวได้รับผลกระทบ (0.14 วินาที) mysql> แทรกลงในค่า DemoTable (2,'David'); Query OK, 1 แถวได้รับผลกระทบ (0.18 วินาที)

แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -

mysql> เลือก *จาก DemoTable;

ผลลัพธ์

<ก่อนหน้า>+------+---------+| รหัส | ชื่อ |+------+-------+| 1 | จอห์น || 2 | คริส || 2 | โรเบิร์ต || 2 | David |+------+-------+4 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่ออัปเดตตารางใน SQL โดยที่ส่วนคำสั่งหลายฟิลด์ -

mysql> อัปเดต DemoTable set Name='Adam Smith' โดยที่ Id=2 เรียงลำดับตาม Id DESC LIMIT 1 ตกลง ตกลง 1 แถวได้รับผลกระทบ (0.28 วินาที) แถวที่ตรงกัน:1 เปลี่ยนแล้ว:1 คำเตือน:0

ให้เราตรวจสอบบันทึกตารางอีกครั้ง -

mysql> เลือก *จาก DemoTable;

ผลลัพธ์

<ก่อนหน้า>+------+-----------+| รหัส | ชื่อ |+------+-----------+| 1 | จอห์น || 2 | อดัม สมิธ || 2 | โรเบิร์ต || 2 | David |+------+------------+4 แถวในชุด (0.00 วินาที)