使用 Rowid

GBase 8s 中,您可使用与表行相关联的 rowid 列作为该行的一个属性。rowid 列本质上是未分片的表中以及以 WITH ROWIDS 子句创建了的分片的表中的一个隐藏列。对于每一行,rowid 列是唯一的,但它不必是顺序的。然而,推荐您使用主键作为访问方式,而不是利用 rowid 列。

下列示例使用 SELECT 语句中的 ROWID 关键字:
SELECT *, ROWID FROM customer;
        
        SELECT fname, ROWID FROM customer ORDER BY ROWID; 
        
        SELECT HEX(rowid) FROM customer WHERE customer_num = 106;

最后的示例展示如何获得您的行的定位的页号(0x 之后的前六位)和槽号(最后两位)。

在包含聚集函数的查询的 Projection 子句的选择列表中,您不可使用 ROWID 关键字。