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

อัปเดตตารางใน MySQL และแสดงเฉพาะชื่อย่อในคอลัมน์ใหม่


ในการเริ่มต้น ใช้แนวคิดของ left() พร้อมกับ substring_index()

ให้เราสร้างตาราง -

mysql> สร้างตาราง demo13−> (−> full_name varchar(100),−> short_name varchar(20)−> );แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (1.18 วินาที)

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

mysql> แทรกลงในค่า demo13(full_name) ('John Smith'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.27 วินาที) mysql> แทรกลงใน demo13 (full_name) ค่า ('David Miller'); ตกลง 1 แถว ได้รับผลกระทบ (0.13 วินาที) mysql> แทรกลงในค่า demo13 (full_name) ('Chris Brown'); ตกลง ตกลง 1 แถวได้รับผลกระทบ (0.28 วินาที)

แสดงบันทึกจากตารางโดยใช้คำสั่ง select -

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

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+--------------+-----------+| full_name | short_name |+-------------+-----------+| จอห์น สมิธ | NULL || เดวิด มิลเลอร์ | NULL || คริส บราวน์ | NULL |+-------------+-----------+3 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่ออัปเดตตารางและรับชื่อย่อ -

mysql> update demo13−> set short_name=concat(−> left(full_name, 1),−> left(substring_index(full_name, ' ', −1), 1)−> );Query OK, 3 แถวได้รับผลกระทบ (0.14 วินาที) แถวที่ตรงกัน:3 เปลี่ยน:3 คำเตือน:0

แสดงบันทึกจากตารางโดยใช้คำสั่ง select -

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

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+--------------+-----------+| full_name | short_name |+-------------+-----------+| จอห์น สมิธ | JS || เดวิด มิลเลอร์ | DM || คริส บราวน์ | CB |+-----------------------+-----------+3 แถวในชุด (0.00 วินาที)