作者TeemingVoid (TeemingVoid)
看板Database
标题Re: [SQL ] 相依性的资料
时间Fri Feb 24 00:02:50 2012
※ 引述《Ting1024 (无)》之铭言:
: 问题有点小复杂
: 假设TABLE A有两个栏位
: 厂商 协力厂商
: ComA ComC
: ComB ComZ
: ComC ComA
: 现在问题是 ComA的协力厂商是 ComC
: 恰好 ComC的协力厂商是 ComA
: 要怎麽用SQL指令,找出这种互为协力厂商的资料列?
: 或者资料表应该怎麽规划才容易搭配SQL找出来呢?
: 目前我只能想到写程式,针对厂商栏位一列一列去找 ><
是像这样的结果吗? :)
use test
go
create table TableA
(
id int primary key,
Party varchar(10),
ThirdParty varchar(10)
)
go
insert into TableA values (1, 'ComA', 'ComC')
insert into TableA values (2, 'ComB', 'ComZ')
insert into TableA values (3, 'ComC', 'ComA')
insert into TableA values (4, 'ComA', 'ComD')
insert into TableA values (5, 'ComD', 'ComA')
go
select L.*
from TableA L join TableA R
on (R.ThirdParty = L.Party and R.Party = L.ThirdParty and R.id > L.id)
id Party ThirdParty
----------- ---------- ----------
1 ComA ComC
4 ComA ComD
(2 row(s) affected)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.38.87.87
1F:推 Ting1024:感谢T大的指导,正确无误。好久没用,都忘了表格可以 02/24 01:12
2F:→ Ting1024:join 自己本身....(糗 > < ) 02/24 01:12
3F:→ TeemingVoid:不客气 ^^ 02/24 01:29
4F:推 hukhuk:赞 02/24 01:31