一、数据查询语句
(1)select语句完整的句法

select 目标表的列名或列表达式序列
from 基本表名和(或)视图序列
[ where 行条件表达式 ]
[ group by 列名序列
 [ having 组条件表达式 ] ]

[ order by 列名[ asc|desc ],… ]

(2)SQL语句的书写方式

  • SQL 语句不区分大小写
  • 关键字不能简写或分行
  • 子句通常分行书写
  • SELECT,FROM必须有

(3)DUAL 表

select sysdate from dual;

DUAL 表具有一个称为“X”的行,一个称为“DUMMY”的列。

DUAL 表用于创建SELECT 语句并执行不与特定数据库表直接相关的命令。

(4)列别名

  • 可用来重命名列标题
  • 有助于计算
  • 紧跟在列名后面
  • 列名和别名之间可以具有可选的关键字AS
  • 如果别名包含空格、特殊字符或者区分大小写,则需要将别名放在双引号中

(5)NULL
在SQL 中,NULL 是一个有趣的词。要了解NULL,您必须先弄清楚NULL 是什么以及NULL 不是什么。
Null 指不可用、未分配、未知或不适用的值。

  • Null 不同于零或空格。在SQL 中,零是一个数字,而空格是一个字符。
  • 在条件语句中判断是否为null  is null / is not null

(6)LIKE

  • 百分比(%) 和下划线(_) 这两个符号称为通配符
  • 当需要完全匹配含有% 或_ 字符的字符串时,需要指出% 或_ 不是通配符,而是搜索项的一部分。ESCAPE 选项反斜杠(\) 用来表示_ 或% 是名称的一部分,而不是通配符值。

(7)替代变量

  • 有时,可能需要以多个不同的值运行同一查询,以获得不同的结果集。试想一下,如果您需要查一个一个的用户的信息,每次都要编写类似的语句,会不会很麻烦呢?
  • &变量名

注意:仅用于SQL *Plus或者用于原理和SQL *Plus相同的开发工具

注:Oracle中的替换变量,&变量名,&&变量名

(8)单行函数

select to_char(sysdate,'yyyy"年"mm"月"dd"日"') from dual;

注:Oracle之单行函数

二、多表格查询

定义
将两个或两个以上的表格,按照一定的关系连接起来进行查询。
多表格查询分类

  • 连接查询
  • 嵌套查询
  • 集合查询

三、连接查询

(1)等值连接查询

SELECT table1.column, table2.column,...,tablen.column
FROM table1, table2,..., tablen
WHERE table1.column1 = table2.column2..and tablen-1.column1 = tablen.column2;

– 指定列所属的表格
– 列出所有要查询的表
– 表格关系在Where中指出,n个表有n-1个等值关系式

(2)两表连接查询例子

查询商品信息,显示类型名称。

select gname,gtname,gprice,gstocks
from t_goods,t_gtype
where t_goods.gtid=t_gtype.gtid;

(3)外连接
 查询结果包含不符合连接条件的元组
左外连接:
select pmid,pdate,sname,pstate from t_main_procure
a,t_supplier b where a.sid=b.sid(+);

四、嵌套查询

定义:将一个查询语句嵌套在另一个查询语句的Where或Having中的查询

语法:

select select_list
from table
where expr operator
(select select_list

from table);

查询本月有进货记录的供应商信息

select sid, sname
from t_supplier
where sid in (select sid from
t_main_procure
where  to_char(pdate,'yyyymm')=to_char(sysdate,'yyyymm'));

五、集合查询
定义:多个SELECT语句的结果进行
集合操作
分类

  • 并操作 UNION
  • 交操作 INTERSECT
  • 差操作 MINUS

(1)并操作 UNION
得到前后两个查询结果的和
UNION-查询结果不包括重复值

select pmid, sname, pdate, pdate, pamount , ’采购’
from t_main_procure a, t_supplier b
where a.sid=b.sid
union
select omid,uname, odate,oamount,ostate,’订单’
from t_main_order a, t_user b
where a.uiid=b.uiid;

Oracle入门(十三A)之Select相关推荐

  1. Oracle入门(十三C)之高级查询(下)

    上章:Oracle入门(十三B)之高级查询(上) 四.常见组函数 SUM.AVG.COUNT.MIN.MAX 分组函数忽略null 值. 不能在WHERE 子句中使用组函数. MIN 和MAX 可用于 ...

  2. Oracle入门(十三B)之高级查询(上)

    下章:Oracle入门(十三C)之高级查询(下) 一.多表格查询 (1)定义 将两个或两个以上的表格,按照一定的关系连接起来进行查询. (2)多表格查询分类 连接查询 嵌套查询 集合查询 二.连接查询 ...

  3. Oracle入门(十三)之SQL的DML

    数据操纵语言(Data Manipulation Language, DML)是SQL语言中,负责对数据库对象运行数据访问工作的指令集,以INSERT.UPDATE.DELETE三种指令为核心,分别代 ...

  4. oracle入门学习(3) 所用的学习环境介绍与设置

    oracle入门学习(3) 原文见我的QQ空间:http://user.qzone.qq.com/284648964?ptlang=2052 由于原文是写在我的QQ空间,文章转过来的过程中造图片丢失, ...

  5. Oracle入门(十四)之PL/SQL

    一.PL/SQL 基本语法 PL/SQL语言是模块式的过程化SQL,是oracle公司对SQL的扩展. (1) (2) (3) (5) (6) (7)数据类型 Number 数字型 Varchar2 ...

  6. Oracle入门(十二)之SQL的DDL

    一.数据类型 Character 数据类型 Number 数据类型 Date 数据类型 Raw 和 Long Raw 数据类型 LOB 数据类型 注:Oracle数据类型详解 二.表 (1)创建表 c ...

  7. oracle入门之登录-创建用户

    推荐一个Oracle入门学习网站:http://www.51zxw.net/study.asp?vip=16229363 点击之后搜索Oracle 第一个就是小姐姐Oracle视频讲解课程 永久表空间 ...

  8. 《Oracle 入门教程》第 01 篇 专栏介绍

    文章目录 专栏背景 专栏内容 专栏寄语 大家好,我是只谈技术不剪发的 Tony 老师.欢迎来到我的专栏<Oracle 入门教程>!本专栏主要面向 Oracle 数据库的初学者,包括初级 D ...

  9. oracle入门教程

    推荐一个Oracle入门学习教程 点击下面链接进入自学网站 学习网站:http://www.51zxw.net/study.asp?vip=16229363 点击图片箭头所指按钮--请点击进入学习 在 ...

  10. oracle入门知识实施,新手必须了解的oracle入门知识

    欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入 oracle入门知识 一个表空间只能属于一个数据库每个数据库最少有一个控制文件(建议3个,分别放在不同的磁盘上) 每个数 ...

最新文章

  1. jQuery日期和时间插件(jquery-ui-timepicker-addon.js)中文破解版使用
  2. 建设IPTV电视系统是否有必要?
  3. vue 新版本 webpack 代理 跨域设置
  4. Python笔记-UiSelector坐标定位
  5. Train Problem II(卡特兰数 组合数学)
  6. vue脚手架搭建项目的兼容性配置
  7. Android studio打包遇到的问题总结
  8. 阶段3 3.SpringMVC·_06.异常处理及拦截器_4 SpringMVC拦截器之介绍和搭建环境
  9. QQ MSN 网页互动代码
  10. php 使用PayPal 支付
  11. NAO机器人的介绍与参数
  12. vue基础:ElementUI的表单
  13. 【PCL模块解析 05 之KDTree】01 KDTree原理及代码解析
  14. ESP8266 Arduino开发之路(2)— 连接到无线WiFi路由器
  15. 线性递推数列_学习笔记
  16. 稀疏表示和字典学习的简单理解
  17. 计算机教学模式研究项目申报书,教学研究项目申报书.doc
  18. 脱离微信运行环境,小程序如何实现微信授权登录
  19. [成都银行网点]交通银行成都网点地址,电话,成都银行分布,位置(总是找不到银行的支行名字,火大!来个全收录,有不对的地方帮忙评论指出哈)
  20. 一篇好文,以在迷茫时阅读

热门文章

  1. [Java基础]增强for循环
  2. 《C++ Primer》10.1节练习
  3. 操作系统知识点总结+最终版
  4. 用java做一个模拟彩票程序_JAVA模拟----- 彩票机子-----抽奖过程的实例化
  5. 用python输出12和8的最大公_重点汇总-python常见问题1
  6. [蓝桥杯2016初赛]方格填数
  7. Educational Codeforces Round 75 (Rated for Div. 2) E2. Voting (Hard Version) 贪心
  8. 多项式全家桶学习笔记【持续更新】
  9. Codeforces Round #717 (Div. 2)
  10. [刷题记录] luogu网络流24题 及 网络流心得体会 及 经典模型不定期更新