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

จะอัปเดตคอลัมน์ด้วยค่าเดียวกัน (ไม่ใช่ทั้งหมด) โดยใช้ UPDATE, SET และ LIMIT ใน MySQL ได้อย่างไร


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

mysql> สร้างตาราง DemoTable -> ( -> รหัส int ไม่ใช่ NULL AUTO_INCREMENT คีย์หลัก -> ชื่อ varchar(20) -> ); แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.69 วินาที)

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

mysql> แทรกลงในค่า DemoTable(Name) ('Carol');Query OK, 1 แถวได้รับผลกระทบ (0.17 วินาที)mysql> แทรกลงในค่า DemoTable(Name) ('Chris'); Query OK, 1 แถวได้รับผลกระทบ ( 0.14 วินาที) mysql> แทรกลงในค่า DemoTable (ชื่อ) ('David'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.18 วินาที) mysql> แทรกลงในค่า DemoTable (ชื่อ) ('Bob'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ ( 0.15 วินาที) mysql> แทรกลงในค่า DemoTable (ชื่อ) ('ไมค์'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.13 วินาที) mysql> แทรกลงในค่า DemoTable (ชื่อ) ('แซม'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว ( 0.20 วินาที) mysql> แทรกลงในค่า DemoTable (ชื่อ) ('Robert'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที) mysql> แทรกลงในค่า DemoTable (ชื่อ) ('Adam'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ ( 0.18 วินาที)

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

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

ผลลัพธ์

<ก่อนหน้า>+----+---------+| รหัส | ชื่อ |+----+--------+| 1 | แครอล || 2 | คริส || 3 | เดวิด || 4 | บ๊อบ || 5 | ไมค์ || 6 | แซม || 7 | โรเบิร์ต || 8 | Adam |+----+-------+8 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามเพื่ออัปเดตตารางและตั้งค่าคอลัมน์ที่มีค่าเดียวกัน ยกเว้นค่าคอลัมน์สุดท้าย -

mysql> อัปเดต DemoTable -> set Name="John" -> จำกัด 7; Query OK, 7 แถวได้รับผลกระทบ (0.20 วินาที) แถวที่ตรงกัน:7 เปลี่ยน:7 คำเตือน:0

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

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

ผลลัพธ์

<ก่อนหน้า>+---+------+| รหัส | ชื่อ |+----+------+| 1 | จอห์น || 2 | จอห์น || 3 | จอห์น || 4 | จอห์น || 5 | จอห์น || 6 | จอห์น || 7 | จอห์น || 8 | อดัม |+----+------+8 แถวในชุด (0.00 วินาที)