数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

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


发布日期:2022年09月01日
 
oracle笔记之简单查询、限定查询和排序

别名

oracle别名如果别名包含空格特殊字符(如#$)或需区分大小写(Name)需要用双引号把别名引起来

select ename Name

sal* Annual Salary

from emp;

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

连接操作符||

select ename||job as Employees

from emp;

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

select ename|| is a ||job

as Employees from emp;

去除重复行distinct

select distinct deptno

from emp;

sql*plus登录

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

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

SQL>select depno

dname

from dept;

sql>L

*dname

sql>Aloc

*dnameloc

sql>L

select depno

dnameloc

*from dept

sql>/(执行)

限定查询和排序

select empnoenamejobdeptno

from emp

where deptno=;

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

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

is null(是空值)

在where子句中的字符串和日期数值必须用单引号引起来oracle 以内部数值形式存储日期能表现出世纪小时默认的日期形式是DDMONYY

sql>select enamejobdeptno

from emp

where ename=JAMES;

sql>select namejobdeptno

from emp

where ename=james;

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

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

>select enamesal

from emp

where sal between and ;

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

>select enamesalhiredate

from emp

where hiredate between JAN and DEC;

显示mgr等于的雇员信息

>select empnoenamesqlmgr

from emp

where mgr in ();

显示姓名为FORDALLEN雇员的相关信息

>select empnoenamemgrdeptno

from emp

where ename in(FORDALLEN);

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

>select ename

from emp

where ename like S%;

当我们需要对%_进行查找时可以使用escape选项这个选项指定哪个是转义字符

escape标识\字符作为转义符

>select ename

from emp

where ename like %A\_B%escape\;

在条件中NOT形成否定条件

>select enamejob

from emp

where job not in (CLERKMANAGERANALYST);

where sal not between and

where ename not like %A%

wher comm is not null

运算符优先规则

not and or

>select enamejobsal

from emp

where job=SALESMAN

or job=PRESIDENT

and sal>;

第一个条件是工作为president并且月工资大于美元

第二个条件是工作为salesman

因此可以这样理解如果一个雇员是president并且月工资大于或者这个雇员是salesman那么他们将被检索出

>select enamejobsal

from emp

where (job=SALESMAN

or job=PRESIDENT)

and sal>;

第一个条件是工作为president或saleman

第二个条件是月工资大于

order by子句后可选用关键字asc(升序默认为升序)desc(降序排列)

>select enamejobdeptnohiredate

from emp

order by hiredate;

               

上一篇:SQL命令查询Oracle存储过程信息

下一篇:oracle数据库PL/SQL序列(组图)