SQL> --当前用户
SQL> show user SQL> --当前用户下的表
SQL> select * from tab;
TNAME TABTYPE CLUSTERID
------------------------------ ------- ----------
DEPT TABLE
EMP TABLE
BONUS TABLE
SALGRADE TABLE SQL> --员工表的结构
SQL> desc emp
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------
EMPNO NOT NULL NUMBER(4)
ENAME VARCHAR2(10)
JOB VARCHAR2(9)
MGR NUMBER(4)
HIREDATE DATE
SAL NUMBER(7,2)
COMM NUMBER(7,2)
DEPTNO NUMBER(2) SQL> --清屏
SQL> host cls SQL> --查询所有的员工信息
SQL> select * from emp;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
7369 SMITH CLERK 7902 17-12月-80 800 20
7499 ALLEN SALESMAN 7698 20-2月 -81 1600 300 30 SQL> --设置行宽
SQL> show linesize
linesize 80
SQL> set linesize 120
SQL> --设置列宽
SQL> col ename for a8
SQL> col sal for 9999 SQL> --通过列名
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
7369 SMITH CLERK 7902 17-12月-80 800 20
7499 ALLEN SALESMAN 7698 20-2月 -81 1600 300 30 SQL> SQL优化的原则:
SQL> 1。尽量使用列名 SQL> --查询员工信息:员工号 姓名 月薪 年薪
SQL> select empno,ename,sal,sal*12 from emp;
EMPNO ENAME SAL SAL*12
7369 SMITH 800 9600
7499 ALLEN 1600 19200 SQL> --查询员工信息:员工号 姓名 月薪 年薪 奖金 年收入
SQL> select empno,ename,sal,sal*12,comm,sal*12+comm from emp;
EMPNO ENAME SAL SAL*12 COMM SAL*12+COMM
7369 SMITH 800 9600
7499 ALLEN 1600 19200 300 19500 SQL> /*
SQL> SQL中的null
SQL> 1、包含null的表达式都为null
SQL> 2、null永远!=null
SQL> */
SQL> --nvl(a,b) nvl2
SQL> select empno,ename,sal,sal*12,comm,sal*12+nvl(comm,0) from emp;
EMPNO ENAME SAL SAL*12 COMM SAL*12+NVL(COMM,0)
7369 SMITH 800 9600 9600
7499 ALLEN 1600 19200 300 19500 SQL> --2、null永远!=null
SQL> --查询奖金为null的员工
SQL> select * from emp where comm=null;
未选定行 SQL> select * from emp where comm is null;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
7369 SMITH CLERK 7902 17-12月-80 800 20
7566 JONES MANAGER 7839 02-4月 -81 2975 20
SQL> host cls SQL> select empno,ename,sal,sal*12,comm,sal*12+nvl(comm,0) from emp;
EMPNO ENAME SAL SAL*12 COMM SAL*12+NVL(COMM,0)
7369 SMITH 800 9600 9600
7499 ALLEN 1600 19200 300 19500 SQL> --distinct 去掉重复记录
SQL> select distinct deptno from emp;
DEPTNO
30
20
10 SQL> select distinct deptno,job from emp;
DEPTNO JOB
20 CLERK
30 SALESMAN
20 MANAGER
30 CLERK
10 PRESIDENT
30 MANAGER
10 CLERK
10 MANAGER
20 ANALYST
SQL> --distinct作用于后面所有的列 SQL> --连接符 ||
SQL> --concat函数
SQL> select concat('Hello',' World');
select concat('Hello',' World')
*
第 1 行出现错误:
ORA-00923: 未找到要求的 FROM 关键字 SQL> select concat('Hello',' World') from emp; CONCAT('HELL
------------
Hello World
Hello World SQL> select 3+2 from dual;
3+2
5 SQL> --dual表:伪表
SQL> --伪列
SQL> select 'Hello'||' World' 字符串 from dual; 字符串
------------
Hello World SQL> --查询员工信息:***的薪水是****
SQL> select ename||'的薪水是'||sal 信息 from emp; 信息
SMITH的薪水是800
ALLEN的薪水是1600

Oracle入门基础(一)一一基本查询的更多相关文章

  1. Oracle入门基础(六)一一子查询

    SQL> --查询工资比SCOTT高的员工信息 SQL> --1. SCOTT的工资 SQL> select sal from emp where ename='SCOTT'; SA ...

  2. Oracle入门基础(八)一一数据处理

    SQL> SQL的类型 SQL> 1.DML(Data Manipulation Language 数据操作语言): select insert update delete SQL> ...

  3. Oracle入门基础(十三)一一java调用oracle存储过程

    package demo; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultS ...

  4. Oracle入门基础(十二)一一储存过程及触发器

    1.第一个存储过程 打印Hello World 调用存储过程: 1.exec sayhelloworld(); 2.begin sayhelloworld(); sayhelloworld(); en ...

  5. Oracle入门基础(十一)一一PL/SQL基本语法

    1.打印Hello World declare --说明部分 begin --程序 dbms_output.put_line('Hello World'); end; 2.引用型变量 查询并打印783 ...

  6. Oracle入门基础(十)一一数据库其他对象-视图/序列/索引/同义词

    SQL> --视图 SQL> create view empinfoview as select e.empno,e.ename,e.sal,e.sal*12 annsal,d.dname ...

  7. Oracle入门基础(九)一一创建表和管理表

    练习:查询每一年入职人数及总人数 SQL> select count(*) Total, 2 sum(decode(to_char(hiredate,'yyyy'),'1980',1,0)) & ...

  8. Oracle入门基础(七)一一集合运算

    SQL> /* SQL> 查询10和20号部门的员工 SQL> 1. select * from emp where deptno=10 or deptno=20; SQL> ...

  9. Oracle入门基础(五)一一多表查询

    SQL> --等值连接 SQL> --查询员工信息:员工号 姓名 月薪 部门名称 SQL> set linesize 80 SQL> desc dept 名称 是否为空? 类型 ...

随机推荐

  1. tomcat 上传文件权限不足

    参考:https://www.cnblogs.com/houchaoying/p/8652040.html tomcat-bin-catalina.sh UMASK="0027" ...

  2. 什么,有狗快跑!慢着,这次手把手教你怎么过安全狗!(sql注入篇)

    前言 在记忆里上次绕安全狗还是在上次,开开心心把自己之前绕过狗的payload拿出来,发现全部被拦截了,事情一下子就严肃起来了,这就开整. 环境 本次环境如下sqli-lab的sql注入靶场 网站安全 ...

  3. [c语言]运算符的优先级与结合性

    c语言中运算符的优先级和结合性常常被人混淆一谈,本文目的在于简单谈谈两者的区别.本文举几个简单的例子说明,这些运算符也特别常用. 首先要明白的是:优先级决定表达式中各种不同的运算符起作用的优先次序:而 ...

  4. Smartbi权限安全管理系统_保障数据权限安全

    思迈特软件Smartbi具有完善的安全管理体系,Smartbi权限安全管理系统它可以控制用户功能权限.数据访问权限.资源访问权限.Smartbi权限安全管理系统支持按用户.用户组.角色进行管理:支持多 ...

  5. Win10系统下关闭管理员运行确认弹窗

    Windows10及以上系统对于安全的考虑,对于程序运行时的权限做了控制.    点击后,会弹出确认的弹窗. 像我做测试,或者使用cmd经常需要administrator 权限,一直弹弹弹就很烦. 要 ...

  6. HDFS的上传下载流程

    hdfs上传流程 首先客户端向nn请求上传文件.nn经过检查回应客户端是否可以上传.客户端得到同意后向nn请求上传第一块文件的dn.nn返回给客户端dn的地址.客户端与其中一个dn1建立连接然后dn1 ...

  7. 迷你avalonjs框架

    valon2是一款基于虚拟DOM与属性劫持的 迷你. 易用. 高性能 的 前端MVVM框架, 拥有超优秀的兼容性, 支持移动开发, 后端渲染, WEB Component式组件开发, 无需编译, 开箱 ...

  8. shell-if表达式(-f,-d,-s,-r,-w,-x,-eq,-ne,-ge,-gt,-le,-lt )

    文件表达式 if [ -f file ] 如果文件存在if [ -d - ] 如果目录存在if [ -s file ] 如果文件存在且非空if [ -r file ] 如果文件存在且可读if [ -w ...

  9. windows下CMD常用命令(url链接)

    https://blog.csdn.net/LJFPHP/article/details/78818696

  10. 超好用的Markdown编辑器Typora中的常见语法

    目录 下载网址 安装 一.标题 一级标题 二级标题 三级标题 四级标题 五级标题 六级标题 二.语法环境 三.单选 四.字体 五.分割符 六.列表 七.图片引入 八.表格 九.超链接 下载网址 正版中 ...