Java数据库篇6——多表查询
生活随笔
收集整理的這篇文章主要介紹了
Java数据库篇6——多表查询
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Java數據庫篇6——多表查詢
1、笛卡爾積
交叉連接查詢
設集合A={a, b},集合B={0, 1, 2},則兩個集合的笛卡爾積為{(a, 0), (a, 1), (a, 2), (b, 0), (b, 1), (b, 2)}
2、 內連接查詢
2.1、隱式內連接
SELECT 字段名 FROM 左表, 右表 WHERE 連接條件;多表查詢可以起別名,方便查詢
2.2、顯示內連接
SELECT 字段名 FROM 左表 [INNER] JOIN 右表 ON 條件3、外連接查詢
3.1、左連接
以左表為基準, 匹配右邊表中的數據,如果匹配的上,就展示匹配到的數據 如果匹配不到, 左表中的數據正常展示, 右邊的展示為null
SELECT 字段名 FROM 左表 LEFT [OUTER] JOIN 右表 ON 條件3.2、右連接
以右表為基準,匹配左邊表中的數據,如果能匹配到,展示匹配到的數據 如果匹配不到,右表中的數據正常展示, 左邊展示為null
SELECT 字段名 FROM 左表 RIGHT [OUTER ]JOIN 右表 ON 條件4、子查詢
一條select 查詢語句的結果, 作為另一條 select 語句的一部分
- 子查詢必須放在小括號中
- 子查詢一般作為父查詢的查詢條件使用
4.1、where型子查詢
將子查詢的結果, 作為父查詢的比較條件
SELECT 查詢字段 FROM 表 WHERE 字段=(子查詢); SELECT * FROM products WHERE price = (SELECT MAX(price) FROM products);4.2、from型子查詢
將子查詢的結果, 作為 一張表,提供給父層查詢使用
SELECT 查詢字段 FROM (子查詢)表別名 WHERE 條件;4.3、exists型 子查詢
子查詢的結果是單列多行, 類似一個數組, 父層查詢使用 IN 函數 ,包含子查 詢的結果
SELECT 查詢字段 FROM 表 WHERE 字段 IN (子查詢);總結
以上是生活随笔為你收集整理的Java数据库篇6——多表查询的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java面向对象编程篇3——接口与抽象类
- 下一篇: Java微服务篇1——SpringBoo