oracle表間多字段連線

2021-09-01 18:45:20 字數 648 閱讀 6089

問題如下:

select *

from table1 a, table2 b,

where a.1 = b.1

and a.2 = b.2

and a.3 = b.3

----------

初始 a表裡有資料  b表裡是空的 想用a的那三個字段聯合起來 join b 的那三個字段

方法1:

select * from

table1 left outer join table2

on a.1=b.1 and a.2=b.2 and  a.3=b.3

方法2:

select a.*

from table1 a, table2 b,

where a.1 = b.1(+)

and a.2 = b.2(+)

and a.3 = b.3(+)

方法3:

a.1||a.2||a.3做主鍵

b也同樣處理,然後再外連線

select a.*

from (select a.1||a.2||a.3 al from table1) a, (select b.1||b.2||b.3 bl from table2) b,

where a.al = b.bl(+)

單錶多字段統計

在表cccommoncompany中 有province欄位,licensestartdate 開始日期字段,licenseenddate 結束日期字段,我們的要求是按照licensestartdate和licenseenddate所在的年份來統計.見sql select province,sum ...

oracle 多字段去重查詢

需要對錶base mri device的compname fieldstr version欄位分別進行去重查詢,如何使用乙個sql搞定?注意 是分別對3個字段進行去重,而不是3個字段聯合去重。首先,必須進行三次查詢,而將查詢結果進行 行合併 需要用到union或union all 其次,為了區分查詢...

oracle 多欄位統計(多count)

查詢同一張表中同一欄位的不同值的綜合,方法如下 select o.code 禮品 o.name 禮品名稱,l.couponactivityid 券活動定義,count l.couponno as 券總數量,count case when l.state in 0 then 0 end 未兌換券數量,...