1.left outer join先执行连接操作,再将结果通过WHERE语句进行过滤

select s.ymd,s.symbol,s.price_close,d.dividend

from stocks s

left outer join

dividends d

on s.ymd=d.ymd and s.symbol and d.symbol

where s.symbol="AAPL"

2.left outer join 先执行where过滤,再执行连接操作

select s.ymd,s.symbol,s.price_close,d.dividend

(select * from stocks where  symbol="AAPL") s

left outer join

(select * from dividends where symbol="AAPL") d

on s.ymd=d.ymd

3.内连接,可以将过滤条件放到on语句中

4. 将stocks表作为驱动表,虽然在查询中不是位于最后面的

select /*+STREAMTABLE(s)* / s.ymd,s.symbol,s.price_close,d.dividend

from stocks s

left outer join

dividends d

on s.ymd=d.ymd and s.symbol and d.symbol

where s,symbol="AAPL"

5. MAPJOIN 不支持右外连接(right outer join)和全外连接(full outer join)

select /*+MAPJOIN(s)* / s.ymd,s.symbol,s.price_close,d.dividend

from stocks s

JOIN(INNER JOIN)

dividends d

on s.ymd=d.ymd and s.symbol and d.symbol

where s,symbol="AAPL"

6.笛卡儿积不支持优化

select * from stocks join dividends

最新文章

  1. redis大幅性能提升之使用管道(PipeLine)和批量(Batch)操作
  2. [leetcode] 题型整理之字符串处理
  3. 深入grootJs(进阶教程)
  4. python 中文编码问题
  5. Java Hour2
  6. ios-UIWebView中js和oc代码的互调
  7. SKView类
  8. List 随机排序
  9. NYOJ 1066 CO-PRIME(数论)
  10. C#获取周的第一天、最后一天、月第一天和最后一天
  11. C# Base64方式的编码与解码
  12. Zookeeper连接eclipse
  13. mysql中的int和tinyint、varchar和char、DateTime和TimeStamp区别
  14. part1
  15. ES6走一波 Iterator
  16. vc++2010如何新建项目并在控制台打印helloworld
  17. vuex学习及使用
  18. ZOJ 3632 K - Watermelon Full of Water 优先队列优化DP
  19. hdu 1392 Surround the Trees 凸包模板
  20. js 随机打乱数组

热门文章

  1. 使用maven如何生成源代码的jar包
  2. wow64 32位进程中切换64位模式,取回64位寄存器值
  3. 【tensorflow使用笔记二】:tensorflow中input_data.py代码有问题的解决方法
  4. 004-windows(64位)下使用curl命令
  5. 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_05 IO字符流_1_字符输入流_Reader类&FileRead
  6. Pandas 50题练习
  7. 测开之路一百一十:bootstrap图片
  8. OpenResty json 删除转义符
  9. 剑指offer--day03
  10. 安全运维 - Windows系统维护