pomoc w zapytaniu

Pawel Kaminski
2016-12-08 09:33
Pawel Kaminski
0

Witam,
mam 2 tabelki w jednej sa customers a w drugiej ich telefony.
Potrzebuje przypisac telefon z jednej osoby o tym samym psel nip na inne osoby z tymi samymi psel nip
create table #cust (customer_id int,pesel varchar(10), nip varchar(10))
insert into #cust values(1,'p10','')
insert into #cust values(2,'p10','')
insert into #cust values(3,'p55','')
insert into #cust values(4,'p10','')

create table #phone (phone_id int,customer_id int,phone varchar(10))
insert into #phone values(1,1,'1234')

czyli w tym przpadku dla customer_id 2,4 trzeba przypisac telefon z phone_id = 1
w tabeli pohone musa wpasc 2 inserty dla customer_id 2,4

Pozostało 580 znaków

2016-12-08 12:25

Rejestracja: 17 lat temu

Ostatnio: 6 godzin temu

0

Coś w ten deseń:

drop table #phone
drop table #cust
create table #cust (customer_id int,pesel varchar(10), nip varchar(10))
insert into #cust values(1,'p10','')
insert into #cust values(2,'p10','')
insert into #cust values(3,'p55','')
insert into #cust values(4,'p10','')

create table #phone (phone_id int,customer_id int,phone varchar(10))
insert into #phone values(1,1,'1234')
insert into #phone values(1,4,'1234')

insert into #phone (phone_id,customer_id,phone)
select distinct
  pp.phone_id,
  cc.customer_id,
  pp.phone
from #cust cc
    inner join (
                select 
                    p.*
                    ,c.nip
                    ,c.pesel
                from 
                    #phone p
                    inner join #cust c on p.customer_id=c.customer_id) pp
                ON cc.pesel=pp.pesel and cc.nip=pp.nip and cc.customer_id<>pp.customer_id
    left join #phone test ON test.customer_id=cc.customer_id and test.phone_id=pp.phone_id
where
    test.phone_id is null

select * from #phone

Pozostało 580 znaków

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0