mysql5.7新特性之生成列
生成列是通過資料庫中的其他列計算得到的一列。當為生成列建立索引時,可以便捷地加快查詢速度。MySQL 5.7 支援虛拟生成列(virtal generated column)和存儲生成列(stored generated column)。虛拟生成列僅将資料儲存在表的中繼資料中,作為預設的生成列類型;存儲生成列則是将資料永久儲存在磁盤上,需要更多的磁盤空間。
雖然一般情況下都應該使用virtal generated column,但是,目前使用virtal generated column還有很多限制。
不能用virtual generated column建立聚集索引
(如果聚集索引包含多個字段,這些字段也不能有virtual generated column)
不能在virtal generated column上建立全文索引
不能在virtal generated column上建立空間索引
不能用virtal generated column作為外鍵
如果涉及到以上幾個用途的,可以選擇stored generated column來實作。
總結:從這裡可以看出mysql資料庫也在逐漸完善響應的功能,其實該功能與oracle的函數索引比較像,mysql通過一個虛拟列的方式來實作了oracle裡面的函數索引的功能。
#程式員##IT##MySQL#