If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

 
Go Back  dBforums > General > Database Concepts & Design > Lossless Join

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1 (permalink)  
Old 05-09-11, 23:39
prasanna1157 prasanna1157 is offline
Registered User
 
Join Date: May 2011
Posts: 2
Lossless Join

Hello,
I want to know if the following is an example of lossless decomposition, and why/why not?

R A B C
1 A 1000
2 B 2000
1 C 1000

The above is decomposed into:


A C
1 1000
2 2000
1 1000 and


B C
A 1000
B 2000
C 1000.

Will this be lossless? If so, why? If not, why not?



Thanks,
Prasanna
Reply With Quote
  #2 (permalink)  
Old 05-10-11, 00:10
Teddy Teddy is offline
Purveyor of Discontent
 
Join Date: Mar 2003
Location: The Bottom of The Barrel
Posts: 6,075
First I would start out by figuring out what lossless decomposition is.
__________________
oh yeah... documentation... I have heard of that.

*** What Do You Want In The MS Access Forum? ***
Reply With Quote
  #3 (permalink)  
Old 05-10-11, 00:16
prasanna1157 prasanna1157 is offline
Registered User
 
Join Date: May 2011
Posts: 2
Lossless Join

Thanks for the reply. I understand what a lossless join is, but I am just confused with these types of examples. This particular example, on joining the 2 decomposed tables, it gives duplicate rows, but not rows that didn't exist at all in the original table.

It just gives rows which existed more than 1 time. Would it still be lossless?

Thanks,
Prasanna
Reply With Quote
  #4 (permalink)  
Old 05-10-11, 19:40
saikrishnan7 saikrishnan7 is offline
Registered User
 
Join Date: May 2011
Posts: 1
Lossless Join

It is a lossless join. Small world!!
Reply With Quote
  #5 (permalink)  
Old 06-24-11, 08:47
dportas dportas is offline
Registered User
 
Join Date: Dec 2007
Location: London, UK
Posts: 732
The concept of lossless / lossy joins is part of relational database theory. Join in that context is an operation on relations and not "tables" of any other (non-relational) kind.

This:

Quote:
A C
1 1000
2 2000
1 1000
looks like something that has duplicate tuples and therefore it isn't a relation and isn't a relational decomposition. If it isn't a relation then what you are describing can't be a join, let alone a lossless one. Of course it's quite possible to define joins and similar operations on tables (such as SQL tables) but then you'd also have to define what a lossless join meant in that same context. I'm not familiar with any such definition.
Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On