# 伪列
#### 分层查询伪列
表1分层查询伪列 
| Oracle数据库        | GaussDB数据库 |
|:---|:---|
| connect_by_iscycle | 支持         |
| connect_by_isleaf | 支持        |
| level伪列            | 支持        |
   
#### 序列伪列
表2序列 
| Oracle数据库 | GaussDB数据库 | 差异                             |
|:---|:---|:---|
| currval     | 支持，有差异      | GaussDB以函数形式实现。兼容Oracle调用方式。 |
| nextval     | 支持，有差异       | GaussDB以函数形式实现。兼容Oracle调用方式。    |
   
#### rowid伪列
表3rowid 
| Oracle数据库 | GaussDB数据库 | 差异                                                       |
|:---|:---|:---|
| rowid   | 支持，有差异   | Oracle在创建表时支持rowid伪列；GaussDB在创建表时使用hasrowid选项支持rowid伪列。 |
   
#### rownum伪列
表4rownum 
| Oracle数据库 | GaussDB数据库 | 差异                                                                                                                               |
|:---|:---|:---|
| rownum  | 支持，有差异     | Oracle在left、right、full join的条件中使用rownum进行过滤时，不同的条件下表现不尽相同，可能存在忽略或部分忽略rownum条件的现象，而GaussDB在此情况下则表现为对left、right、full join后的结果进行过滤。 |
   
#### xmldata伪列
表5xmldata 
| Oracle数据库 | GaussDB数据库 |
|:---|:---|
| xmldata  | 不支持       |
   
