选择 ROW 字段

您可以 row.field 表示法来选择命名的或未命名的 ROW 类型列的特定字段。例如,假设您有下列表结构:
CREATE ROW TYPE one (a INTEGER, b FLOAT);
        CREATE ROW TYPE two (c one, d CHAR(10));
        CREATE ROW TYPE three (e CHAR(10), f two);
        
        CREATE TABLE new_tab OF TYPE two;
        CREATE TABLE three_tab OF TYPE three;
下列示例展示在选择列表中为有效的表达式:
SELECT t.c FROM new_tab t;
        SELECT f.c.a FROM three_tab;
        SELECT f.d FROM three_tab;

您还可在字段名的位置输入星号(*)来表示被选择的 ROW 类型列的所有字段。

例如,如果 my_tab 表有一包含四个字段的名为 rowcol 的 ROW 类型列,则下列 SELECT 语句检索 rowcol 列的所有四个字段:
SELECT rowcol.* FROM my_tab;
您还可通过仅指定列名称来从 row 类型列检索所有字段。此示例与前一查询有相同的作用:
SELECT rowcol FROM my_tab;

您不仅可随同 ROW 类型列使用 row.field 表示法,还可随同取值结果为 ROW 类型值的表达式使用。要获取更多信息,请参阅在“表达式”部分中的 列表达式