ORACLE下資料比對,找出A已分配B未分配的資料行

時間 2022-06-09 20:15:02

1樓:匿名使用者

能問一句,你要的是b已分配列的資料在a已分配列中存在,而且a保函b的資料的話就把被保函的b的資料給想a一樣的拼起來是嗎?

select

t1.id,

'所需列' as typ

from t1

inner join

(select

t.id,

listagg(t.b,',') within group (order by t.b) as a

from

( select

distinct

t.id,

t.bfrom

t)group by t.id

) t2

on t1.id = t2.id

and t1.a <> t2.a

group by t1.id

樓主你試一下這一段。

不好意思上面那段sql文我有修改,我把外面接改成了內連線,就是隻把不等於的資料給顯示出來了。

2樓:匿名使用者

假設表t有兩列a和b,資料就象你說的,sql可以這麼寫select distinct t2.a from t t1,t t2

where t1.a not like '%'||to_char(t2.b)||'%'

;不知道這是不是你想要的結果

3樓:改承天

看不懂你的問題是什麼意思哦,你直接說要什麼效果吧

oracle語句,我想查詢a表中的a欄位下的值不等於b表中b的值的資料,

4樓:匿名使用者

這個的話,需要用到not in來實現。

select * from a where a not in ( select b from b);

備註:以上語句就是從b表中先讀取出來所有的b的值,之後通過not in函式進行判斷,不符合條件的輸出結果。

5樓:it技術小店

select a.*

from a,b

where a.id= b.id

and a.a<>b.b;

6樓:楊雪峰

select * from a where a not in (

select b from b)

oracle如何很好的比較兩個表資料的差異

7樓:匿名使用者

如有兩張相同表結構的表:

test表:

test1表:

現在要找出兩張表有差異的資料,需要用minus及union的方式查詢出來,語句如下:

select t1.* from

(select * from test

minus

select * from test1) t1union

select t2.* from

(select * from test1

minus

select * from test) t2;

查詢結果如下,紅框部分的資料就是有差異的內容。

8樓:匿名使用者

select * from a minus select * from b;

select * from b minus select * from a;

比較表結構相同的兩表之間的差異用minus。希望對你有幫助。

望採納。

9樓:後韋鏡幼荷

est表:

test1表:

現在要找出兩張表有差異的資料,需要用minus及union的方式查詢出來,語句如下:

select t1.* from(select * from testminusselect * from test1) t1union select t2.* from(select * from test1minusselect * from test)

1select

t1.*

from

(select

*from

test

minus

select

*from

test1)

t1union

select

t2.*

from

(select

*from

test1

minus

select

*from

test)

t2;select

t1.*

from

(select

*from

test

minus

select

*from

test1)

t1union

select

t2.*

from

(select

*from

test1

minus

select

*from

test)

t2;紅框部分的資料就是有差異的內容。

10樓:匿名使用者

欄位關聯full join

select a.aa,b.aa from a full join b on a.

aa = b.aa where a.aa is null or b.

aa is null就可以查詢出不一樣的了

oracle有兩列資料(a,b),其中a,b都有重複,現在想查詢a對應的b有幾個不同值

11樓:

1全部creat table temptable (時間區間,人員代號)insert into temptable select distinct 人員代號,時間區間 from table

select 時間區間,count(人員代號) from temptable

12樓:

select 時間區間,sum(distinct(人員代號)) from 表 group by 時間區間

13樓:匿名使用者

針對分組後的資料計算:

select 時間區間,count(人員代號) from(select 時間區間,人員代號from oracletable group by 時間區間,人員代號)

group by 時間區間 order by 時間區間

oracle中查詢出a表的結果,並將a表中的資料插入到b表中,對於a表中已經存在的b表資料不在插入

14樓:

根據唯一編號(或者收唯一性欄位)not exists 然後插入就可以了吧。

15樓:伴仙黎

insert into b (a1,a2,a3)select a1,a2,a3 from aminus

select a1,a2,a3 from b

16樓:翔阿狗

insert into b (a,b,c) select a,b,c from a where (a,b,c) not in (select a,b,c from b)

17樓:匿名使用者

這個可以先取a表和b表的差集,再into到b表,或者寫個觸發器判斷一下。

oracle 查詢出表a和表b 中不相等的資料

18樓:

(select * from tableaminus

select * from tablea a ,tableb bwhere a.userid =b.orgid)union

(select * from tablebminus

select * from tableb b, tablea awhere b.orgid =a.userid)

oracle 所有的資料型別,「ORACLE」中有哪些資料型別?

會昌一中的學生 oracle資料庫的核心是表,表中的列使用到的常見資料型別如下 對應number型別的示例 對於日期型別,可以使用sysdate內建函式可以獲取當前的系統日期和時間,返回date型別,用systimestamp函式可以返回當前日期 時間和時區。oracle 中有哪些資料型別?orac...

oracle資料庫查詢語句,oracle 資料庫查詢語句

select sum bal cifno from select from a cross join b group by cifno order by 1 如果select from a cross join b不顯示或者顯示錯誤,那麼可以換為select from a union all sel...

oracle資料庫表增加欄位,oracle資料庫中怎樣對多個表增加欄位

會,比如 說增加了欄位,你 insert into table values 這樣就出錯了,因為你是全欄位插入。但是其實你沒有values。alter table table name add column name column type column name column type 問題很嚴重...