Oracle学习笔记(5)——查询
- 基本查询语句
- SELECT [DISTINCT] column_name1,...|* FROM table_name [WHERE conditions]
- 在SQL*PLUS中设置格式
- 更改显示字段名:COLUMN column_name HEADING new_name (注意COLUMN能够简写成COL)
- 比如:
- 更改显示字段名:COLUMN column_name HEADING new_name (注意COLUMN能够简写成COL)
col username heading 用户名;
select * from users;
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
- 设置显示结果的格式:COLUMN column_name FORMAT dataformat; (注意COLUMN能够简写成COL。字符类型仅仅能设置显示的长度)
- 比如
col username format a10; 注意:字符类型用a代表。a10表示设置字符类型长度为10。数值类型用9表示
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
- 清除之前设置过的格式:COLUMN column_name CLEAR;
- 比如:
col username clear;
- 查询表中的全部字段及指定字段
- 查询全部字段:SELECT * FROM table_name;
- 查询指定字段:SELECT column1_name,column2_name... FROM table_name;
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
- 给字段设置别名(*给字段设置别名是针对查询结果进行的,并没有更改字段的名字)
- SELECT column_name AS new_name,... FROM table_name; 注意:AS能够省略。用空格隔开原来的字段名和新字段名就可以。
- 比如:
- 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)
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
- 模糊查询 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');
- BETWEEN ... AND 闭区间。
- 对查询结果排序
- 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;
- SELECT ... FROM ... [WHERE ...] ORDER BY column1 DESC/ASC,...;
- case...when语句的使用
- 作用:就是在我们查询语句其中能够依据我们字段不同的值。还能够显示不同的结果。
- CASE column_name WHEN value1 THEN result1,... [ELSE result] END;
- 样例:依据不同的username来得到他所在的部门
select username,case username when 'aaa' then '计算机部门'
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
- CASE WHEN column_name=value1 THEN result1,... [ELSE result] END;
- 样例:
select username,case when username='aaa' then '计算机部门'
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
- 样例:
- decode函数的使用
- decode (column_name,value1,result1,...,defaultvalue);
- 样例:
- decode (column_name,value1,result1,...,defaultvalue);
select username,decode(username,'aaa','计算机部门','bbb','市场部门','其它') as 部门 from users;
最新文章
- Freemarker与Springmvc
- OutputCache属性详解(三)— VaryByHeader,VaryByCustom
- iOS开发--应用设置及用户默认设置——转载
- 【现代程序设计】homework-08
- django url 软编码
- js设计模式(10)---观察者模式
- HDU 3567 Eight II BFS预处理
- hdu 4775 Infinite Go(暴力)
- Warensoft Stock Service Api客户端接口说明
- RecyclerView.Adapter
- 三分钟读懂TT猫分布式、微服务和集群之路
- 团队作业4——第一次项目冲刺(Alpha版本) 4.24
- Nginx内置模块简介
- C#事件の事件访问器
- Unity读Excel 输出PC端(Windows)后不能读取的问题
- Windows10关闭自动更新
- Radon变换——MATLAB
- selenium webdriver——JS滚动到指定位置
- 【BZOJ】2014: [Usaco2010 Feb]Chocolate Buying(贪心)
- 解方程(hash,秦九韶算法)
热门文章
- ASP.NET MVC中DropDownList的使用
- 最小生成树(Minimum Spanning Tree)——Prim算法与Kruskal算法+并查集
- JavaScript处理异步请求的几种方式(取异步函数返回值)
- conversion function to_char to_number
- 列(Column)
- [BZOJ 1293] 生日礼物
- [CF935F]Fafa and Array
- 【线性筛】【筛法求素数】【约数个数定理】URAL - 2070 - Interesting Numbers
- Problem T: 零起点学算法15——交换变量
- 记一次深刻的教训-----将mat数据转化为SequenceFile