六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 156|回复: 0

DB2中类似于ORACLE中的DUAL表的表(转)

[复制链接]

升级  5.33%

14

主题

14

主题

14

主题

秀才

Rank: 2

积分
58
 楼主| 发表于 2013-1-25 22:39:44 | 显示全部楼层 |阅读模式
http://menjoy.iteye.com/blog/111737
DB2中类似于ORACLE中的DUAL表的表

问题 :在ORACLE中,数据库用户可以通过访问DUAL表获取一些系统信息,例如:
'SELECT SYSDATE FROM DUAL'命令返回当前系统日期
SQL> SELECT SYSDATE FROM DUAL;

SYSDATE
----------
18-12-03

'SELECT 1 + 1 FROM DUAL'执行数学运算
SQL> SELECT 1 + 1 FROM DUAL;

1+1
----------
2

'SELECT MY_SEQUENCE.NEXTVAL FROM DUAL'得到序列值
SQL> SELECT MY_SEQUENCE.NEXTVAL FROM DUAL;

NEXTVAL
----------
2

在DB2中,是否有对应的表?

解答 是的,DB2中存在一个对于的表:SYSIBM.SYSDUMMY1

用户可以通过访问这个表获取相应的信息。

例如:
'SELECT CURRENT DATE FROM SYSIBM.SYSDUMMY1' 命令返回当前系统日期

db2 => SELECT CURRENT DATE FROM SYSIBM.SYSDUMMY1

1
----------
2003-12-18

1 条记录已选择。

'SELECT 1+1 FROM SYSIBM.SYSDUMMY1' 执行数学运算
db2 => SELECT 1+1 FROM SYSIBM.SYSDUMMY1

1
-----------
          2

1 条记录已选择。

'SELECT NEXTVAL FOR MYSEQ FROM SYSIBM.SYSDUMMY1' 得到序列值
db2 => SELECT NEXTVAL FOR MYSEQ FROM SYSIBM.SYSDUMMY1

1
-----------
          3

1 条记录已选择。

此外,在DB2中,用户还可以用VALUES语句查询上面的值。

例如:
db2 => VALUES CURRENT DATE

1
----------
2003-12-18

1 条记录已选择
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表