ต่อไปนี้คือข้อแตกต่างพื้นฐานบางประการระหว่าง MySQL ที่จัดเก็บ GENERATED COLUMNS และ MySQL virtual GENERATED COLUMNS -
ในแง่ของพื้นที่ดิสก์
หากเราเห็นความแตกต่างในแง่ของพื้นที่ดิสก์ คอลัมน์ที่สร้างเสมือนจะไม่ใช้พื้นที่ดิสก์ใดๆ ในทางกลับกัน คอลัมน์ที่สร้างที่เก็บไว้จะใช้พื้นที่ดิสก์
ในแง่ของการใช้งาน
หากเราเห็นความแตกต่างในแง่ของการทำงาน คอลัมน์ที่สร้างเสมือนคือการดำเนินการ INPLACE ซึ่งหมายความว่าข้อกำหนดของตารางจะเปลี่ยนแปลงโดยไม่ต้องคัดลอกข้อมูลทั้งหมดอีกครั้ง ในทางกลับกัน คอลัมน์ที่สร้างที่เก็บไว้เป็นการดำเนินการคัดลอกและมีค่าใช้จ่ายเท่ากับการเพิ่มคอลัมน์ใหม่ลงในตาราง
ในแง่ของการคำนวณ
ในคอลัมน์ที่สร้างขึ้นเสมือน ค่าจะถูกคำนวณทันทีระหว่างการดำเนินการอ่านและก่อนทริกเกอร์ ในทางกลับกัน ค่าคอลัมน์ที่สร้างที่เก็บไว้จะได้รับการอัพเดตในทุกคำสั่ง INSERT และ UPDATE
ควรใช้เมื่อใด
เราควรพิจารณาใช้คอลัมน์เสมือนสำหรับข้อมูลที่มีการเปลี่ยนแปลงหลายครั้ง ค่าใช้จ่ายของ Virtual Column มาจากการอ่านตารางอย่างต่อเนื่อง และเซิร์ฟเวอร์ต้องคำนวณทุกครั้งว่าค่าของคอลัมน์นั้นจะเป็นเท่าใด ในทางกลับกัน เราควรพิจารณาใช้ Stored Columns เมื่อข้อมูลไม่เปลี่ยนแปลงอย่างมีนัยสำคัญหรือเลยหลังการสร้าง