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

แยกค่าทศนิยมในสองคอลัมน์ของตาราง MySQL?


หากต้องการแยกค่าทศนิยมออกเป็นสองคอลัมน์ คอลัมน์แรกจะมีค่าก่อนทศนิยม คอลัมน์ที่สองจะมีค่าตามหลังทศนิยม สำหรับสิ่งนี้ คุณสามารถใช้ SUBSTRING_INDEX() ร่วมกับ CAST() ให้เราสร้างตารางก่อน -

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

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

mysql> แทรกลงในค่า DemoTable1951 ('100.50'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที) mysql> แทรกลงในค่า DemoTable1951 ('70.90'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที) mysql> ลงในค่า DemoTable1951 ('1000.55');แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.00 วินาที)

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

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

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

<ก่อนหน้า>+---------+| ค่าที่ 1 |+---------+| 100.50 || 70.90 || 1000.55 |+---------+3 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามเพื่อแยกค่าทศนิยมในสองคอลัมน์:

mysql> เลือก cast(substring_index(Value1, '.', 1) เป็น unsigned) เป็น FirstValue, cast(substring_index(Value1, '.', -1) เป็น unsigned) เป็น SecondValue จาก DemoTable1951;

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

<ก่อนหน้า>+-----------+-------------+| FirstValue | SecondValue |+--------------------+-------------+| 100 | 50 || 70 | 90 || 1000 | 55 |+-----------+-------------+3 แถวในชุด (0.00 วินาที)