Oracle数据库--基本的select语句

1. 基本select语句

1)查看当前用户
    show user
   USER 为 "SCOTT"
   2)查询当前用户下的表
    SQL> select * from tab;

  TNAME TABTYPE CLUSTERID
  ------------------------------ ------- ----------
  DEPT TABLE
  EMP TABLE
  BONUS TABLE
  SALGRADE TABLE

3)查看员工表的结构
   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)

4)清屏
  SQL> host cls

5)查询所有的员工信息
  SQL> select * from emp;

6)设置行宽
  SQL> show linesize
  linesize 80
  SQL> set linesize 120
   7)设置列宽
  SQL> col ename for a8
  SQL> col sal for 9999
  SQL> /

  8)通过列名
  SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno
  2 from emp;

  

  

  SQL优化的原则:
  1。尽量使用列名

9)查询员工信息:员工号 姓名 月薪
  SQL> select empno,ename,sal
    

10)c命令 change
   

  11)查询员工信息:员工号 姓名 月薪 年薪
  SQL> select empno,ename,sal,sal*12
  2 from emp;

  12)查询员工信息:员工号 姓名 月薪 年薪 奖金 年收入
  SQL> select empno,ename,sal,sal*12,comm,sal*12+comm
  2 from emp;

  

    SQL中的null
   1、包含null的表达式都为null
   2、null永远!=null

13)nvl(a,b) nvl2 当a为null,值为b
  

  14)SQL中的null

  2、null永远!=null
  15)查询奖金为null的员工
  SQL> select *
  2 from emp
  3 where comm=null;

   

  SQL> select *
  2 from emp
  3 where comm is null;

  

  16)列的别名

  select empno as "员工号",ename "姓名",sal "月 薪",sal*12,comm,sal*12+nvl(comm,0)
  from emp
  

  17)distinct 去掉重复记录

  SQL> select deptno from emp;

  SQL> select distinct deptno from emp;

   

  SQL> select job from emp;

  SQL> select distinct job from emp;

    SQL> select distinct deptno,job from emp;

  distinct作用于后面所有的列

     18)连接符 ||

   concat函数

   SQL> select concat(‘Hello‘,‘ World‘) from emp;

  

  SQL> select concat(‘Hello‘,‘ World‘) from dual;

  dual表:伪表
  伪列
   select ‘Hello‘||‘ World‘ 字符串 from dual;

  

  查询员工信息:***的薪水是****
  SQL> select ename||‘的薪水是‘||sal 信息 from emp;

  

时间: 2024-10-24 21:39:25

Oracle数据库--基本的select语句的相关文章

oracle数据库删除数据Delete语句和Truncate语句的对比

oracle数据库删除数据Delete语句和Truncate语句的对比 当表中的数据不需要时,则应该删除该数据并释放所占用的空间,删除表中的数据可以使用Delete语句或者Truncate语句,下面分别介绍. 一.delete语句 (1)有条件删除    语法格式:delete [from]  table_name  [where condition]; 如:删除users表中的userid为‘001’的数据:delete from users where userid='001'; (2)无条

Oracle数据库查询分页SQL语句

Oracle数据库查询分页数据SQL语句: select * from (select a.*,rownum row_num from (select * from mytable t order by t.id desc) a ) b where b.row_num between 1 and 10

MySQL数据库学习02: SELECT语句

声明:本篇文章大多数内容出自<MySQL必知必会>,仅供学习参考,勿作他用! 第4章 检索数据 4.1 SELECT语句 SELECT子句用于检索数据库中的表数据.它几乎是MySQL中最常用的语句.我们一定要掌握好.为了能够检索表数据,必须至少给出两条信息 —— 想选择什么(表字段,即列),以及从什么地方选择(哪张表). 4.2 检索单个列 输入: select prod_name from products; 分析: 上述语句利用SELECT语句从products表中检索一个名为prod_n

【Oracle】SQL 中Select语句完整的执行顺序

SQL Select语句完整的执行顺序: 1.from子句组装来自不同数据源的数据: 2.where子句基于指定的条件对记录行进行筛选: 3.group by子句将数据划分为多个分组: 4.使用聚集函数进行计算: 5.使用having子句筛选分组: 6.计算所有的表达式: 7.select 的字段: 8.使用order by对结果集进行排序. SQL语言不同于其他编程语言的最明显特征是处理代码的顺序.在大多数据库语言中,代码按编码顺序被处理.但在SQL语句中,第一个被处理的子句式FROM,而不是

Oracle数据库常用操作sql语句

1.--建立表空间create tablespace cmdb_db datafile '\home\cmdb_11.dbf' size 100m autoextend on next 50m extent management local;2.--建用户create user cmdb_1023 identified by admin default tablespace cmdb_db;3.--给权限grant connect,resource,dba to cmdb_db;4.--导入数据

Oracle数据库常用的Sql语句整理

查看当前用户的缺省表空间 : select username,default_tablespace from user_users; 2.查看用户下所有的表 : select * from user_tables; 3.创建表空间 :CREATE TABLESPACE invocie DATAFILE '/data/InvoiceData/invoicebak/invocie_01.dbf' Size 4096M AUTOEXTEND OFF: CREATE TABLESPACE "MIS_DA

Oracle数据库常用的sql语句

1. select * from emp; 2. select empno, ename, job from emp; 3. select empno 编号, ename 姓名, job 工作 from emp; 4. select job from emp; 5. select distinct job from emp; 6. select distinct empno, job from emp;说明:因为雇员编号不重复, 所以此时证明所有的列没有重复,所以不能消除掉重复的列. 7. 查询

Linux中部署Oracle数据库常用的sql语句

--1 导出26表数据 pub开头 exp mpaccs/mpaccs@192.168.0.26/mds file=/oradata/mdsbiaoshuju_pub26.dmp log=/oradata/mdsbiaoshuju_pub26.log statistics=none buffer=8192000 tables=PUB_APP,PUB_CANT,PUB_CANT_TYPE,PUB_CMD_LOG,PUB_COMMON_SINGLE_PARMS,PUB_CONF_ROLES,PUB_

Oracle 数据库 有用的sql语句

select rownum id from dual connect by level<=10; SELECT to_date('2014-12-01', 'yyyy-mm-dd') + numtodsinterval(rownum - 1, 'day') FROM DUAL CONNECT BY ROWNUM <= (to_date('2015-01-01', 'yyyy-mm-dd') - to_date('2014-12-01', 'yyyy-mm-dd'))