Oracle笔记之简单查询、限定查询和排序

2014-11-24 17:42:10 · 作者: · 浏览: 0

  1.别名:


  select ename "Name",


  sal*12 "Annual Salary"


  from emp;


  列的别名可用于select和order by子句中,但是不能用在where子句中


  2.连接操作符"||"


  select ename||job as "Employees"


  from emp;


  3.原义字符串'' 包含在select列表中的一个字符、数字或日期,而不是列名或别名,使用原义字符串可增强输出的可读性


  select ename||' is a '||job


  as "Employees" from emp;


  4.去除重复行distinct


  select distinct deptno


  from emp;


  5.sql*plus登录


  sqlplus [username[/password[@database]]]


  在sql*plus中编辑sql缓冲区中的sql语句


  SQL>select depno,


  2 dname


  3 from dept;


  sql>L 2


  2*dname


  sql>A,loc


  2*dname,loc


  sql>L


  1 select depno,


  2 dname,loc


  3*from dept


  sql>/(执行)


  6.限定查询和排序


  select empno,ename,job,deptno


  from emp


  where deptno=10;


  oracle提供6种常用的比较运算符:=、>、>=、<、<=、<>或!=(不等于)


  除了6种常用的外还提供4种比较运算符:between...and...(包含)、IN(和多个值中的任何一个匹配)、like、(字形匹配)、


  is null(是空值)


  7.在where子句中的字符串和日期数值必须用单引号引起来,oracle 以内部数值形式存储日期,能表现出世纪、年、月、日、小时、分、秒,默认的日期形式是DD-MON-YY


  sql>select ename,job,deptno


  from emp


  where ename='JAMES';


  sql>select name,job,deptno


  from emp


  where ename='james';


  所有字符检索都是大小写敏感的


  显示工资在1000和1500美元之间的雇员信息


  >select ename,sal


  from emp


  where sal between 1000 and 1500;


  显示1981年加入公司的雇员相关信息


  >select ename,sal,hiredate


  from emp


  where hiredate between '01-JAN-81' and '31-DEC-81';


  显示mgr等于7902,7566,7788的雇员信息


  >select empno,ename,sql,mgr


  from emp


  where mgr in (7902,7566,7788);


  显示姓名为FORD,ALLEN雇员的相关信息


  >select empno,ename,mgr,deptno


  from emp


  where ename in('FORD','ALLEN');


  like字形匹配操作可以使用通配符"%"(表示任意字符)和"_"(表示一个字符)


  >select ename


  from emp


  where ename like 'S%';