比如select sysdate, a from b;
而现在表b中数据量很大,请问得到的sysdate是未取到数据之前的时间,还是取到数据之后的时间?
而现在表b中数据量很大,请问得到的sysdate是未取到数据之前的时间,还是取到数据之后的时间?
解决方案 »
- oracle数据库删除数据时出现表名无效的错误
- oracle10g安装好了但没有DataBase Control(Enterprise Manager Console)
- 关于SQL语句的分析含义?
- 在同一编译环境下有时能访问oracle数据库,有时不能.请问为何?
- 在OEM客户端方案中的表中数据为什么不能及时更新,我用sqlplus插入了几行数据,可是在OEM中还是看不到,可是用查询语句表明的确已经插入
- 在英文操作系统中安装pl/sql后,存储过程的中文注释,全部是乱码,求达人相助!
- 在linux9下面装oracle8.1.5怎么老是不成功
- 从两个表取数据(非常简单)
- 请教oracle8.1.6的问题,为什么我的sql plus可以进,而DBA studio进不去?
- 请问:Oracle初学者应该看什么书?
- 奇怪
- 一个简单的更新语句的问题!急等!谢谢!修改
至于时间是前还是后,我想应该是看你把sysdate放到查询字段的哪个位置了,应该是按给定字段顺序来查询的吧。
不太可能,为了一个系统时间,每次读取数据都需要重新获取一个系统时间,太费资源了赞同hebo2005所说的,应该是查询之前的,做了一个小测试,简单证明了一下:1. 顺便找了个查询能够花费足够的能够看得见的时间。SQL> select sysdate, count(1) from all_objects;SYSDATE COUNT(1)
-------------- ----------
06-12月-08 49535已用时间: 00: 00: 47.452. 然后写了个测试时间差距的简单东东testsysdate.sql,文本如下:spool c:\testsysdate.logalter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';select sysdate from dual;select sysdate, count(1) from all_objects;select sysdate from dual;spool off;3. 看结果拉:
SQL> @c:\testsysdate.sql会话已更改。
SYSDATE
-------------------
2008-12-06 15:40:54
SYSDATE COUNT(1)
------------------- ----------
2008-12-06 15:40:54 49408
SYSDATE
-------------------
2008-12-06 15:41:234. 根据结果基本上断定使用查询前面的时间(说法不准确,偶也不知道咋说清楚,意思清楚就成哈)