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

การจัดรูปแบบสตริงตัวเลข MySQL เพื่อใส่เลขศูนย์ทางด้านซ้ายของสตริงที่มีตัวเลขหลังเครื่องหมายทับ


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

mysql> สร้างตาราง DemoTable1369 -> ( -> BatchId varchar(20) -> );ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.46 วินาที)

แทรกบางระเบียนในตารางโดยใช้คำสั่งแทรก เราได้แทรกตัวเลขที่นี่โดยคั่นด้วยเครื่องหมายทับ -

mysql> แทรกลงในค่า DemoTable1369 ('19/5'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที) mysql> แทรกลงในค่า DemoTable1369 ('19/78'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที )mysql> แทรกลงในค่า DemoTable1369 ('19/567'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที) mysql> แทรกลงในค่า DemoTable1369 ('19/1234'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.11 วินาที) 

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

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

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

<ก่อนหน้า>+---------+| BatchId |+---------+| 19/5 || 19/78 || 19/567 || 19/1234 |+---------+4 แถว>

นี่คือแบบสอบถามสำหรับการจัดรูปแบบสตริงตัวเลข เราได้ตั้งค่าศูนย์หลังเครื่องหมายทับเพื่อเติมฟิลด์ ความกว้างของฟิลด์ทั้งหมดถูกกำหนดโดยค่าฟิลด์สูงสุดเช่น 4 ที่นี่สำหรับหมายเลข “1234” -

mysql> เลือก -> concat(left(BatchId,3), lpad(substring(BatchId, 4), 4, '0')) -> จาก DemoTable1369;

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

<ก่อน>+--------------------------------------------- -----------------+| concat(left(BatchId,3), lpad(substring(BatchId, 4), 4, '0')) |+---------------------- ---------------------------------------- +| 19/0005 || 19/0078 || 19/0567 || 19/1234 |+--------------------------------------------- -----------------+4 แถวในชุด (0.00 วินาที)