【学亮开讲】Oracle内外连接查询20181119
--内连接查询
--需求:查询显示业主编号、业主名称、业主类型名称
select
os.id 业主编号,os.name 业主名称,ot.name 业主类型名称
from t_owners os,t_ownertype ot
where os.ownertypeid=ot.id
--需求:查询显示业主编号、业主名称、地址和业主类型
select ow.id 业主编号,ow.name 业主名称,ad.name 地址,ot.name 业主类型
from t_owners ow,t_ownertype ot,t_address ad
where ow.addressid = ad.id and ow.ownertypeid = ot.id
--需求:查询显示业主编号、业主名称、地址、所属区域、业主分类
select ow.id 业主编号,ow.name 业主名称,ad.name 地址,ar.name 所属区域,ot.name 业主类型
from t_owners ow,t_ownertype ot,t_address ad,t_area ar
where ow.addressid = ad.id and ow.ownertypeid = ot.id and ad.areaid = ar.id
--需求:查询显示业主编号、业主名称、地址、所属区域、收费员、业主类型
select ow.id 业主编号,ow.name 业主名称,ad.name 地址,ar.name 所属区域,op.name 收费员,ot.name 业主类型
from t_owners ow,t_ownertype ot,t_address ad,t_area ar,t_operator op
where ow.addressid = ad.id and ow.ownertypeid = ot.id and ad.areaid = ar.id and ad.operatorid = op.id --外连接查询
--需求:查询业主的账务记录,显示业主编号、名称、年、月、金额。如果此业主没有账务记录也要列出姓名
--sql1999写法
select ow.id 业主编号,ow.name 业主名称,ac.year 年,ac.month 月,ac.money 金额
from t_owners ow left join t_account ac
on ac.owneruuid = ow.id
--Oracle写法
select ow.id 业主编号,ow.name 业主名称,ac.year 年,ac.month 月,ac.money 金额
from t_owners ow,t_account ac
where ow.id=ac.owneruuid(+)
--右外连接查询
--需求:查询业主的账务记录,显示业主编号、名称、年、月、金额。如果账务记录没有对应的业主信息,也要列出记录。
--sql1999写法
select ow.id 业主编号,ow.name 业主名称,ac.year 年,ac.month 月,ac.money 金额
from t_owners ow right join t_account ac
on ac.owneruuid = ow.id
--Oracle写法
select ow.id 业主编号,ow.name 业主名称,ac.year 年,ac.month 月,ac.money 金额
from t_owners ow,t_account ac
where ow.id(+)=ac.owneruuid
【学亮开讲】Oracle内外连接查询20181119的更多相关文章
- oracle——外连接查询
一.问题描述 有时我们为了保留某个表中的数据,而该表中的数据在另外一个关联表中未必都存在对应,此时就应该试用外连接查询. 比如:两个表,产品表和子产品表 注:子产品的parent_product_id ...
- mysql 全连接和 oracle 全连接查询、区别
oracle的全连接查询可以直接用full on,但是在mysql中没有full join,mysql使用union实现全连接. oracle的全连接 select * from a full joi ...
- oracle 内外连接,左连接,右连接 区别
首先讲解一下 on 与where后面接的条件的区别 on和where条件的区别如下:1. on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录.2.where条件是在 ...
- 【学亮开讲】Oracle存储过程教学笔记(二)20181116
--带出参的存储过程的创建和调用 create or replace procedure pro_owners_add1 ( v_name varchar2,--名称 v_addressid numb ...
- 【学亮开讲】Oracle存储过程教学笔记(一)20181115
--创建业主序列起始值为11 ; --不带传出参数的存储过程 create or replace procedure pro_owners_add ( v_name varchar2,--名称 v_a ...
- oracle 之 连接查询
where 连接 select * from a,b //使用的是笛卡尔乘积 显示 a.count*b.count 条数 select * from a,b where a.id=b.id 其实只是 ...
- ORACLE 通过连接查询更新 update select
注意: 关键的地方是where 语句的加入. 在11G中, 如果不加11G , 或造成除匹配的行数更新为相应的值之后, 其余的会变成负数. 所以,执行前需要测试, 普通办法就是: 先查看需要更新的 ...
- MySql的连接查询
类似于oracle的连接查询,mysql连接查询也有左外连接.右外连接.内连接查询.但是,不同的是没有直接 的全外连接查询. 这里介绍MySql的连接查询: 这里已两张表为例:STUDENT 表 和 ...
- IBatis.Net 表连接查询(五)
IBatis.Net之多表查询: 一.定制实际对应类的方式 首先配置多表的测试数据库,IBatis.Net之Oracle表连接查询配置: 首先新建两张表如下: 为两张表建立外键: ALTER TABL ...
随机推荐
- huapin
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 本地项目上传到CODING
1.在Coding上添加项目 1).新建项目 README:一般项目中都会添加一个README文件对项目进行概述,以便一目了然地知道这个项目是做什么用的,如何使用等信息.README文件采用markd ...
- centos6.5下配置django+uwsgi+nginx
https://blog.csdn.net/huanbia/article/details/54630180
- 想要快速上手 Spring Boot?看这些教程就足够了!
1.项目名称:分布式敏捷开发系统架构 项目简介:基于 Spring + SpringMVC + Mybatis 分布式敏捷开发系统架构,提供整套公共微服务服务模块:集中权限管理(单点登录).内容管理. ...
- hyperledger中文文档学习-2-简介
参考https://hyperledgercn.github.io/hyperledgerDocs/blockchain_zh/ Hyperledger区块链框架(https://blog.csdn. ...
- Oracle 11g实时SQL监控 v$sql_monitor
Oracle 11g实时SQL监控: 前面提到,在Oracle Database 11g中,v$session视图增加了一些新的字段,这其中包括SQL_EXEC_START和SQL_EXEC_ID, ...
- 【转】深入理解Java:注解(Annotation)--注解处理器
https://www.cnblogs.com/peida/archive/2013/04/26/3038503.html 如果没有用来读取注解的方法和工作,那么注解也就不会比注释更有用处了.使用注解 ...
- linux内存源码分析 - SLUB分配器概述
本文为原创,转载请注明:http://www.cnblogs.com/tolimit/ SLUB和SLAB的区别 首先为什么要说slub分配器,内核里小内存分配一共有三种,SLAB/SLUB/SLOB ...
- 3-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案数据篇(安装配置数据库,使用Navicat for MySQL和手机APP 连接测试)
2-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案数据篇(数据库简单说明) https://www.mysql.com/ 咱用安装版的 我把自己下载的放在了这里 现在 ...
- Requests爬虫
一.request入门 之前写过一个urllib的爬虫方法,这个库是python内建的,从那篇文章也可以看到,使用起来很繁琐.现在更流行的一个爬虫库就是requests,他是基于urllib3封装的, ...