什么是列?
列是一系列值,通常属于特定字段,在表中垂直显示。在关系型数据库表中,列中的值对应于不同的记录。
列中的值共享一个数据类型。也就是说,如果一列的数据类型是Integer,那么该列中的每个值都必须是整数。可能还会有其他约束,例如格式、字符长度或该值是否是必填项。
示例列
这是 Metabase 的示例数据库中Orders表的图像,其中Created At列已高亮显示。Created At列的数据类型是DateTime,此列中的值对应于单个订单的时间戳。
Orders表的概览,Created At列已高亮显示。列与字段
虽然列和字段在技术上并非同义词,但通常可以互换使用。请参阅列与字段。
但是,请注意,列并不总是直接对应数据库中的字段。例如,您可能希望在 Metabase 中创建自定义列,其中包含计算值,例如显示每个订单折扣百分比的列。您可以通过告诉 Metabase 计算Discount除以Subtotal并将结果值显示在新列中来创建此自定义列。
列式存储
虽然许多传统的关系型数据库将数据存储为行,并且通常最适合存储交易型数据,但一些数据库(例如优化用于分析的数据仓库)则使用列式存储。
列式数据库(也称为面向列的数据库)会一起物理存储一列的值,而不是基于整个行进行索引。这可以极大地加速分析查询和聚合函数,因为这些查询能够从磁盘上的同一位置检索相似数据,而不是执行整个数据库的大范围读取以从单个记录中提取列的值。