Oracle中的虚拟表:dual

dual是Oracle中的一个虚拟表,无论什么时候,它只有一条记录:X

那这个表有什么卵用呢?还是有点卵用的:它可以拿来凑数,以满足语法要求。具体看几个例子就了然了:

1、查当前登陆用户名

  

2、当计算器使

  

3、获取一个随机数

  

4、拼接字符串

  

5、获取当前日期

  

  格式不太友好,还可以调用个系统函数调整一下格式:

  

简单来说,dual就是个接盘侠,当你要查的东西不在任何表里,但是不写个表名Oracle又会报语法错误,这个时候把它安在dual这个接盘侠身上就行了。

dual就是这么乐于助人~

原文地址:https://www.cnblogs.com/qscfyuk/p/11743517.html

时间: 2024-10-10 03:01:40

Oracle中的虚拟表:dual的相关文章

Oracle中存储过程传入表名学习

Oracle中存储过程传入表名: 一.动态清除该表的数据 create or replace procedure p_deletetable(i_tableName in varchar2) as --定义变量存放动态的SQL语句 dynamic_drop_sql varchar2(500); begin dynamic_drop_sql :=  'DELETE  FROM ' || i_tableName ; --执行动态SQL语句 execute immediate dynamic_drop

oracle中导出导入表以及数据

Oracle数据导入导出imp/exp就相当于oracle数据还原与备份.exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中.利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用.执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,DOS中可以执行时由于 在oracle 8i 中安装目录\ora81\BIN被设置为全局路径,该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出.oracl

Oracle中的多表查询(笛卡尔积原理)

本次预计讲解的知识点 1. 多表查询的操作.限制.笛卡尔积的问题: 2. 统计函数及分组统计的操作: 3. 子查询的操作,并且结合限定查询.数据排序.多表查询.统计查询一起完成各个复杂查询的操作: 一.多表查询的基本概念 在之前所使用的查询操作之中,都是从一张表之中查询出所需要的内容,那么如果现在一个查询语句需要显示多张表的数据,则就必须应用到多表查询的操作,而多表查询的语法如下: SELECT [DISTINCT] * | 字段 [别名] [,字段 [别名] ,-] FROM 表名称 [别名]

Oracle中查询一个表中字段(列)个数

如果一个表中有很多的字段,而我们想要知道这个表中的字段个数,如果使用如下方式一个一个数,则显得很麻烦 Oracle中可以使用如下sql来查询字段(列)个数 select count(*) from user_tab_columns where table_name=upper('表名') 或者 select max(column_id) from user_tab_columns where table_name=upper('表名') 作者:itmyhome 链接:http://blog.cs

在数据库开发中何为虚拟表

在数据库中我们建立的表是真实存在的,比如Student表;而在查询一张或多张表时,尤其是在用可视化工具查询出来的用表显示的数据就是虚拟表;因为这个表不是像Student表那样真实存在数据库的,而是因为条件形成的我们看到的类似的表,这个表是没有名字的,但是我们仍然称它为表,而这个表就是虚拟的表了;而且这个虚拟表存在只是临时的,它不像Student表一样是永久性的(相对来说);所以在学习数据库中如果听到虚拟表之类的也就不要再有疑惑了;其实在程序开发中如果听到虚拟,就应该知道它和某种虚拟的东西类似的,

在Oracle中数据库、表空间、表之间的关系

在oracle中,表空间是存储概念上的,建立表空间需要有对应的数据文件,数据文件建立好之后直接会把一定的磁盘空间分配给它,这样可以对数据库的存储空间进行有效的管理.然后在建表的时候指定对应的表空间,该表的数据就会都存在表空间对应的数据文件上,和Mysql那种每个表一个文件的方式比起来,存储的可控性更强. oracle和mysql不同,不存在mysql中那种数据库的概念,而是实例的概念,当然,也可以在实例里建立不同的user来区分,每个user对应的表都是相对独立的,比如两个user下可以分别建同

恢复oracle中误删除的表

查看回收站中表 select object_name,original_name,partition_name,type,ts_name,createtime,droptime from recyclebin; 恢复表 SQL>flashback table ZCM002;或SQL>flashback table "BIN$A8uJNocaGVzgUwwrCgpDBg==$0" to before drop; 注:必须9i或10g以上版本支持,flashback无法恢复全文

如何在Oracle中 查询一个表被其他数据库对象引用[z]

这两天老大让我再oracle中把要替换的表被其他对象引用之处找出来,整理一份表,接到这个任务,我是一脸懵逼,怎么找?大海捞针么?问同事.查资料,自己研究,最后整理一下仅供大家参考,同时以备将来回顾.本篇只涉及表被其他数据库对象引用,不涉及外键,想寻找外键的,自己查看下面附有的链接. 首先有下列几种方式: 1.plsql工具 : 点击工具,找到 查找数据库对象 最后进入到查找页面 最后根据页面把要查找的 表对象或者关键词填入 文本查找   里,再在对象条件里 选择自己要筛选的条件即可筛选.但是此方

Oracle中对现有表增加列

alter   table   Tablename   add(column1   varchar2(20),column2   number(7,2)...) Oracle中修改列名不可以,但是可以删除列,增加列 alter   table   Tablename   drop   column   column1   alter   table   Tablename   add(column1   varchar2(20),column2   number(7,2)...)