Oracle Database 数据表数据查询


DML 数据操纵语言 - 数据的查看和维护

select / insert /delete /update

基本查询语句

Select [distinct] column_name1,…|* from table_name [where conditions]

在SQL*PLUS中设置格式

列名设置

Column column_name heading new_name

Col column_name heading new_name

显示格式

Column column_name format dataformat

Col column_name format a10 字符型长度

Col column_name format 9 位数长度

清楚设置的格式

Column column_name clear

查询全部或部分字段

查询结果设置别名

运算符与表达式

算术运算符(+ - * /)

比较运算符(> >= < <= = <>)

逻辑运算符(and or not)

有条件的查询

where

模糊查询

Like

通配符(_,%)

范围查询

Between …and

In

Not in

对查询结果排序

Select ..from…[where…] order by column1 asc/desc,…

Case…when语句

Case column_name

When value1 then result1,…

[else result] end

Case

When column_name=value1

Then result1,…[else result] end

Decode函数

Decode(column_name,value1,result1,...,defaultvalue)

运算符

<     小于

<=  小于等于

>     大于

>=  大于等于

=     等于

!=   不等于

<> 不等于

:=    赋值

is null     如果操作数为null返回true

like  比较字符串   _代表一个字符     %代表多个字符

create table test

(

a number

)

insert into test value(10);

insert into test value(20);

insert into test value(30);

between 验证值是否在范围之内

select * from test where a between 10 and 20;

in    验证操作书在设定的一系列值中

select * from test where a in(1,10,20,30);

all    表示子查询返回值中的所有值,相当于比较最大值

select sal from emp where sal > all( select sal from emp where sal<2000);

any  表示子查询返回值中的任意值,相当于最小值

and 两个条件都满足

or    只满足一个

not  取反

+     加

-     减

*      乘

/      除

基础查询

<--基本的select语句-->

select 列名,列名,.. from 表名,表名,.. where 条件 group by 列名 having 条件

select 是必须的 ,后面添你要查询的列名 ,* 代表所有

from 是必须的 , 后面填写你要查询的表名,可以有多个

where 可选的,后面填写你的查询条件

group by 可选的,对聚合进行分组,当查询内容多于一列且包含聚合函数时使用

having 仅用于group by 的关键字,和where作用一样

<--消除相同的行-->

select distinct 列名,列名,..from 表名

<--排序 order by-->

select 列名,列名,.. from 表名 order by 要排序的列名

<--注意:order by指令需聚合函数配合使用,否则只能是单列-->

<--聚合函数-->

avg 平均值

select avg(emp.sal) from emp;

sum 求和

select sum(emp.sal) from emp;

max 最大值

select max(emp.sal) from emp;

min 最小值

select min(emp.sal) from emp;

count 总数

select count(emp.sal) from emp;

<--排序-->

升序

select * from emp order by emp.sal ;

降序

select * from emp order by emp.sal desc;

<--数据复制-->

select * into myemp from emp;

<--表复制-->

create table myemp as select * from emp;

<--小技巧-->

哑元表 在没有查询表的情况下使用

select 1+1 from dual

查询分割 ||

select a.a1 ||'----'|| a.a2 from a;

查询行数限制

select * from a where rownum<=2;

查询表结构

desc tab_name

数据复制

select tab_name into tab_name|var from tab_name

高级查询

笛卡尔乘积

select dname,ename from emp,dept;  这种通过多张表简单对加是没有太大意义的

集合运算

交集     用来得到两个或者多个不同集合的共同元素,两个集合的交集就是其中所有属性相等的元素.交集有一个严格的限制:每个结果集中所有列都必须匹配相等

减集    用来查找在一个集合中出现过,而在另一个集合中没有出现的元素,与交集相反的是: 每个结果集中所有列都必须匹配不相等

并集    用来合并两个或者多个类似的集合

交集 intersect

select语句 intersect select语句

减集 minus

select语句 minus select语句

并集 union or union all

select语句 union select语句

内连接

在连接条件中使用等于号(=)运算符比较被连接列的列值,其查询结果中列出被连接表中的所有列,包括其中的重复列。

select dname,ename from dept,emp where dept.deptno = emp.deptno

外连接

条件列使用(+),则此列为外连列,主列信息全部显示,外连列没有则显示空

多行子查询

返回多个行,必须包含一个多行运算符。

10Oracle Database 数据表数据查询的更多相关文章

  1. MySQL(九)之数据表的查询详解(SELECT语法)一

    这一篇是MySQL中的重点也是相对于MySQL中比较难得地方,个人觉得要好好的去归类,并多去练一下题目.MySQL的查询也是在笔试中必有的题目.希望我的这篇博客能帮助到大家! 重感冒下的我,很难受!k ...

  2. 关于EF中实体和数据表以及查询语句映射的问题

    关于EF中实体和数据表以及查询语句映射的问题? 很多人在使用的时候分不清楚 实体字段应该少于等于(数据库中的表字段或者SQL查询中的临时字段).这样在查询或者添加修改都不会出现问题 如果实体的字段大于 ...

  3. 09Oracle Database 数据表数据插入,更新,删除

    Oracle Database 数据表数据插入,更新,删除 插入数据 Insert into table_name(column) values(values); insert into studen ...

  4. SQL Server2016导出数据表数据

    SQL Server2016导出数据表数据 高文龙关注0人评论3914人阅读2017-09-22 08:41:56 SQL Server2016导出数据表数据 我们前面已经介绍了很多关于SQL Ser ...

  5. mssql sqlserver 三种数据表数据去重方法分享

    摘要: 下文将分享三种不同的数据去重方法数据去重:需根据某一字段来界定,当此字段出现大于一行记录时,我们就界定为此行数据存在重复. 数据去重方法1: 当表中最在最大流水号时候,我们可以通过关联的方式为 ...

  6. Django学习之天气调查实例(2):显示数据表数据

    数据表数据添加后,如添加3条用户信息,分别为“aaa”.“bbb”.“ccc”,现在通过代码的方式显示数据表中的数据. 1.在website项目文件夹中创建 userload.py文件,并且写如下代码 ...

  7. MySQL(九)之数据表的查询详解(SELECT语法)二

    上一篇讲了比较简单的单表查询以及MySQL的组函数,这一篇给大家分享一点比较难得知识了,关于多表查询,子查询,左连接,外连接等等.希望大家能都得到帮助! 在开始之前因为要多表查询,所以搭建好环境: 1 ...

  8. MySQL常用sql语句-----数据表的查询操作

    常用的sql语句如下,应对工作足以 1.查询指定字段 select c_id,c_age,c_name from t_student; select c_id as 编号,c_name as 姓名,c ...

  9. MySql——创建数据表,查询数据,排序查询数据

    参考资料:<Mysql必知必会> 创建数据表 在学习前首先创建数据表和插入数据.如何安装mysql可以看看上个博客https://www.cnblogs.com/lbhym/p/11675 ...

随机推荐

  1. SGU 261. Discrete Roots (N次剩余)

    N次剩余 题目:http://acm.sgu.ru/problem.php? contest=0&problem=261 题意:给定n,a,p 求出x^n ≡ a(mod p)在模p意义下的全 ...

  2. C# 函数的传值与传址(转)

    http://www.cnblogs.com/mdnx/archive/2012/09/04/2671060.html using System; using System.Collections.G ...

  3. Linux 常用命令大全2

    Linux 常用命令大全 [帮助命令] command —help man command man 2 command 查看第2个帮助文件 man -k keyword 查找含有关键字的帮助 info ...

  4. EJB是什么?EJB的概念分析与理解(copy)

    [说明:转载于http://blog.csdn.net/jojo52013145/article/details/5783677] 1. 我们不禁要问,什么是"服务集群"?什么是& ...

  5. bzoj 1726: [Usaco2006 Nov]Roadblocks第二短路【dijskstra】

    严格次短路模板,用两个数组分别维护最短路和次短路,用dijskstra,每次更新的时候先更新最短路再更新次短路 写了spfa版的不知道为啥不对-- #include<iostream> # ...

  6. n阶完全生成图的数量

    有些事不是看到了希望才去坚持,而是坚持了才会看到希望 问题 I: 星际之门(一) 时间限制: Sec 内存限制: MB 提交: 解决: [提交][状态][讨论版] 题目描述 公元3000年,子虚帝国统 ...

  7. $CF1153A\ Serval\ and\ Bus$

    看大佬的代码都好复杂(不愧是大佬\(orz\) 蒟蒻提供一种思路 因为求的是最近的车对吧\(qwq\) 所以我们可以用一个\(while\)循环所以没必要去用什么 \(for...\) 至于这是\(d ...

  8. 洛谷2019 3月月赛 T1

    题干 2019第一次月赛 我只有255pts T1还是比较水的... 海星 T1一道简单的模拟(就是有坑..导致很多人不能一次性AC 比如说我) _3个坑点 1.位数问题 2.-0 3.0... #i ...

  9. ASP.NET SQL 总结(2)

    Sql常见面试题(总结) 1.用一条SQL语句 查询出每门课都大于80分的学生姓名 name   kecheng   fenshu 张三     语文       81 张三     数学       ...

  10. 推荐一波 瀑布流的RecylceView

    推荐博客:http://www.bubuko.com/infodetail-999014.html