在DB2中也存在像Oracle中DUMMY一样的伪表。
$ db2 describe table sysibm.sysdummy1
Column
Type
Type
name
schema
name
Length Scale Nulls
------------------------------ --------- ------------------
-------- ----- -----
IBMREQD
SYSIBM
CHARACTER
1
0 No
1 record(s) selected.
SYSIBM.SYSDUMMY1表是一个内存的特殊表(按照Oracle的术语,习惯称之为“伪表”),常用于访问DB2中的寄存器,从而返回特定需要内容。(此外VALUES也可用于访问寄存器)
$ db2 select current timestamp from sysibm.sysdummy1
1
--------------------------
2007-01-21-14.51.04.891837
1 record(s) selected.
$ db2 values current timestamp
1
--------------------------
2007-01-21-14.51.20.124162
1 record(s) selected.
$
建立DUAL视图:
create view dual as select IBMREQD as DUMMY from
SYSIBM.SYSDUMMY1
这样查询就可以直接从DUAL中取系统数据了
转自:http://blog.sina.com.cn/s/blog_679e928c0100mevq.html
分享到:
相关推荐
**注意:** Oracle中的`DUAL`表相当于DB2中的`SYSIBM.SYSDUMMY1`表,用于查询单个值。 #### 十六、时间日期函数 **Oracle:** ```sql SELECT SYSDATE FROM DUAL; ``` **DB2:** ```sql SELECT CURRENT_TIMESTAMP ...
SYSIBM.SYSDUMMY1是一个特殊的表,通常用于返回一个空行。DB2与GreenPlum/PostgreSQL在这方面的实现相似,但在某些细节上可能存在差异。 #### 2.20 变量声明和赋值 变量声明和赋值用于在存储过程或函数中存储中间...
SELECT CURRENT_TIMESTAMP FROM SYSIBM.SYSDUMMY1; ``` - 注意点: Oracle使用 `SYSDATE` 获取当前日期时间,而DB2使用 `CURRENT_TIMESTAMP`。 #### 17. Set - **Oracle** 和 **DB2** 都支持 `SET` 语句来设置...
SELECT session_user FROM sysibm.sysdummy1; SELECT system_user FROM sysibm.sysdummy1; ``` 3. 数据库权限:可以使用以下SQL语句来获取数据库权限信息: ```sql SELECT grantee FROM syscat.dbauth; ``` 防止SQL...
根据提供的文件信息,本文将详细介绍DB2中与字符串处理相关的函数。DB2是IBM开发的一款关系型数据库管理系统,广泛应用于企业级数据管理场景。在DB2中,字符串处理功能非常强大,涵盖了各种常见及不常见的操作需求。...
而在DB2中,相应的函数是`currenttimestamp`,它同样返回当前日期和时间,但为了获取这些值,需要从一个特殊的表`sysibm.sysdummy1`中查询。 ##### 3. 空值处理 **Oracle**: `Select productid, loginname, nvl...
SELECT CHAR(15.5000) FROM SYSIBM.SYSDUMMY1; ``` 2. **日期时间类型转换** - **Oracle**: ```sql SELECT TO_DATE('2008-01-01', 'YYYY-MM-DD') FROM DUAL; ``` - **DB2**: ```sql SELECT DATE('2008-01-...
需要注意的是,`SYSIBM.SYSDUMMY1`是一个虚拟表,用于执行那些不需要访问实际数据的操作。因此,当你执行这个查询时,你实际上是在请求DB2返回当前日期而不需要查询任何实际的数据表。 除了使用`SELECT`语句外,你...
在ORACLE中,`Select sysdate from dual`即可得到当前日期,而在DB2中,我们需要查询`sysibm.sysdummy1`表,用`Select current timestamp from sysibm.sysdummy1`来获取当前时间戳,这更接近于ISO标准的日期时间表示...
DB2中,`SELECT CURRENT_TIMESTAMP FROM SYSIBM.SYSDUMMY1`用于获取当前的时间戳。`SYSIBM.SYSDUMMY1`类似于Oracle中的DUAL,主要用于测试或返回系统级信息。 ### 3. 连接字符串 SQL Server中使用加号`+`来拼接...
DB2中的`SYSIBM.SYSDUMMY1`表通常用于作为空表的替代品。在MySQL中,可以使用`SELECT 1 FROM DUAL`来达到类似的效果。这是因为MySQL并没有直接与`SYSIBM.SYSDUMMY1`等效的表,但可以通过`DUAL`表实现相似功能。`DUAL...
SELECT CURRENT_DATE FROM sysibm.sysdummy1; ``` - **`CURRENT_DATE + INTERVAL`**:可以对当前日期进行加减操作,例如增加一天或减少一天。 ```sql -- 获取明天的日期 SELECT CURRENT_DATE + 1 DAY FROM ...
这里提到的 `sysibm.sysdummy1` 是一个特殊的表,用于返回 DB2 中的寄存器值。此外,也可以通过关键字 `VALUES` 来实现同样的功能: - `VALUES CURRENT_DATE;` - `VALUES CURRENT_TIME;` - `VALUES CURRENT_...
DB2中可以使用select语句获取系统当前日期和时间,例如select current date from sysibm.sysdummy1;select current time from sysibm.sysdummy1;select current timestamp from sysibm.sysdummy1;也可以使用VALUES...
- DB2:`SELECT CURRENT TIMESTAMP FROM SYSIBM.SYSDUMMY1;` 3. 空值转换: - Oracle:`SELECT productid, loginname, NVL(cur_rate, '0') FROM TableName;` - DB2:`SELECT productid, loginname, COALESCE(cur...
示例:SELECT ABS(-3.4) FROM SYSIBM.SYSDUMMY1; 2. SQRT() 函数:返回该参数的平方根。 示例:SELECT SQRT(36) FROM SYSIBM.SYSDUMMY1; 3. EXP() 函数:返回参数的指数函数。 示例:SELECT EXP(2) FROM SYSIBM....
- **示例**: `SELECT POSSTR(MYTEST, TEST) INTO v1 FROM SYSIBM.SYSDUMMY1;` - **功能**: 执行`POSSTR`函数查找字符串'TEST'在'MYTEST'中的位置,并将结果赋值给变量v1。 - **应用场景**: 处理字符串时需要提取特定...
本文将深入探讨DB2中的常用函数,这些函数覆盖了类型转换、日期时间操作、字符串处理以及数学计算等多个方面,对于初学者来说,掌握这些函数能够极大地提升在DB2环境下的数据操作效率。 ### 类型转换函数 DB2提供...
SELECT CURRENT_TIMESTAMP FROM SYSIBM.SYSDUMMY1; ``` #### 空值转换 **Oracle**: 使用`NVL`函数来进行空值转换。 ```sql SELECT productID, loginName, NVL(cur_rate, '0') FROM TableName; ``` **DB2**: 使用`...
- 在DB2中,可以使用`Select current timestamp from sysibm.sysdummy1;`来获取当前的时间戳 3. **空值转换** - Oracle的`nvl`函数用于处理空值,例如:`Select productid,loginname,nvl(cur_rate,'0') from ...