List:General Discussion« Previous MessageNext Message »
From:Nigel Wood Date:May 6 2011 8:34am
Subject:RE: RV: independent tables
View as plain text  
On Fri, 2011-05-06 at 09:00 +0100, Rocio Gomez Escribano wrote:
> Tables "client" an "user" are quite similar, but they don't have any
> intersection, I mean, if somebody is a client, he or she cant be a user. So,
> I have his or her driving license and I need to know what kind of person is.
> 
> Im trying some join left, right, but I'm unable to get it!!
> 

OK, a couple of questions:

Are you absolutely sure the two sets of people are mutually exclusive?
Why use two separate "user" and "client" tables rather than one "person"
table with a typeId which foreign keys on to a personType table? Is the
output of two columns named PersonType,PersonId acceptable for this
query?  

Assuming your design is correct as it stands or fixed in its current
state you can achieve what you want with a join.

select null as userID, clientID 
from client 
where clientCodeDrivingLicense = 321321321
UNION
select userId, null as clientID 
from user 
where userCodeDrivingLicense = 321321321

With regard to the performance of this system over time I'd suggest you
want a unique index on the DrivingLicense column/columns.

Hope that helps,

Nigel



Thread
RV: independent tablesRocio Gomez Escribano4 May
  • Re: RV: independent tableshsv5 May
    • RE: RV: independent tablesRocio Gomez Escribano6 May
      • RE: RV: independent tablesNigel Wood6 May
      • RE: RV: independent tableshsv7 May
Re: RV: independent tablesPhil6 May