首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
数据库
> 详细
Oracle学习笔记(5)——查询
时间:
2016-03-28 00:18:54
阅读:
337
评论:
0
收藏:
0
[点我收藏+]
标签:
基本查询语句
SELECT [DISTINCT] column_name1,...|* FROM table_name [WHERE conditions]
在SQL*PLUS中设置格式
更改显示字段名:COLUMN column_name HEADING new_name
(注意COLUMN可以简写成COL)
例如:
col username heading 用户名;
select * from users;
设置显示结果的格式:COLUMN column_name FORMAT dataformat;
(注意COLUMN可以简写成COL,字符类型只能设置显示的长度)
例如
col username format a10;
注意:字符类型用a代表,a10表示设置字符类型长度为10。数值类型用9表示
select * from users;
col salary format 9999.9;
注意:数
值类型用9表示
select * from users;
清除之前设置过的格式:COLUMN column_name CLEAR;
例如:
col username clear;
col salary clear;
查询表中的所有字段及指定字段
查询所有字段:SELECT * FROM table_name;
查询指定字段:SELECT column1_name,column2_name... FROM table_name;
给字段设置别名(
*
给字段设置别名是针对
查询结果
进行的,并没有更改字段的名字)
SELECT column_name AS new_name,... FROM table_name; 注意:AS可以省略,用空格隔开原来的字段名和新字段名即可。
例如:
select id as 编号,username as 用户名,salary 工资 from users;
运算符和表达式
表达式 = 操作数 + 运算符
Oracle中的操作数可以有变量,常量和字段
运算符
算数运算符(+,-,*,/)
比较运算符(>,>=,<,<=,=,<>)
逻辑运算符(and,or,not)。
优先级:按not、and、or的顺序依次递减。比较运算符的优先级高于逻辑运算符
在SELECT语句中使用运算符(
省略
)
带条件的查询
单一条件的查询
查询用户名为aaa的员工薪水:select salary from users where username=‘aaa‘;
多条件的查询
查询名字是aaa,或者工资在800到2000之间的员工信息
select * from users where username=‘aaa‘ or (salary > 800 and salary <=2000)
模糊查询
LIKE
通配符的使用( _ 、%)
一个 _ 只能代表一个字符
%可以代表0到多个任意字符
使用LIKE查询
例:查询用户名以a开头的用户信息。select * from users where username like ‘a%‘;
例:查询用户名的第二个字符是a的用户信息。select * from users where username like ‘_a%‘;
例:查询用户名中含有a的用户信息。select * from users where username like ‘%a%‘;
范围查询
BETWEEN ... AND 闭区间。
例:查询员工薪水在800和2000之间的所有员工信息:select * from users where salary between 800 and 2000;
注意
包含800和2000
例:查询员工薪水不
在800和2000之间的所有员工信息:
select * from users where salary
not
between 800 and 2000;
IN / NOT IN
查询用户名是aaa或者bbb的用户信息:select * from users where username
in
(‘aaa‘,‘bbb‘);
查询用户名不是aaa,也不是bbb的用户信息:select * from users where username
not
in
(‘aaa‘,‘bbb‘);
对查询结果排序
SELECT ... FROM ... [WHERE ...]
ORDER BY
column1 DESC/ASC,...;
DESC:降序,ASC:升序
例:select * from users order by id desc;
例:select * from users order by id desc,salary asc;
case...when语句的使用
作用:就是在我们查询语句当中可以根据我们字段不同的值,还可以显示不同的结果。
CASE column_name WHEN value1 THEN result1,... [ELSE result] END;
例子:根据不同的用户名来得到他所在的部门
select username,case username when ‘aaa‘ then ‘计算机部门‘
when ‘bbb‘ then ‘市场部门‘ else ‘其他部门‘ end as 部门 from users;
CASE WHEN column_name=value1 THEN result1,... [ELSE result] END;
例子:
select username,case when username=‘aaa‘ then ‘计算机部门‘
when username=‘bbb‘ then ‘市场部门‘ else ‘其他部门‘ end as 部门 from users;
例子:
select username,case when salary<800 then ‘工资低‘ when salary>5000 then ‘工资高‘ end as 工资水平 from users;
decode函数的使用
decode (column_name,value1,result1,...,defaultvalue);
例子:
select username,decode(username,‘aaa‘,‘计算机部门‘,‘bbb‘,‘市场部门‘,‘其他‘) as 部门 from users;
Oracle学习笔记(5)——查询
标签:
原文地址:http://blog.csdn.net/btt2013/article/details/50990481
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
数据库进阶
2021-07-29
在 Oracle 数据库中执行 SQL 语句遇到特殊字符的转义方式
2021-07-28
Windows Logstash同步 Sqlserver 到Elasticsearch
2021-07-26
mysql数据库(11):恢复数据
2021-07-26
mysql数据库(9):常用查询的例子
2021-07-26
SQLAlchemy 多对多
2021-07-26
ClickHouse的JDBC连接
2021-07-26
Apache HBase 1.7.1 发布,分布式数据库
2021-07-26
数据库常用架构和同步工作原理
2021-07-26
MySQL数据库设计规范(仅供参考)
2021-07-26
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!