| Author |
Subquery help needed
|
Joe Harry
Ranch Hand
Joined: Sep 26, 2006
Posts: 8457
|
|
Guys,
I have the following relationship definition:
IDOne has a one to many relationship to IDTwo and IDTwo has a one to many relationship to IDThree. Now I have to fetch and present in a tabular format, all the IDOne and the associated IDTwo and IDThree. I was thinking to get this done as a subquery. Any alternative suggestions?
|
SCJP 1.4, SCWCD 1.4 - Hints for you, SCBCD Hints - Demnachst, SCDJWS - Auch Demnachst
Did a rm -R / to find out that I lost my entire Linux installation!
|
 |
Joe Harry
Ranch Hand
Joined: Sep 26, 2006
Posts: 8457
|
|
Would this hold good?
|
 |
Fatih Keles
Ranch Hand
Joined: Sep 01, 2005
Posts: 177
|
|
|
Why don't you simply join all three?
|
 |
Joe Harry
Ranch Hand
Joined: Sep 26, 2006
Posts: 8457
|
|
|
Do you mean joins perform better than sub queries?
|
 |
Fatih Keles
Ranch Hand
Joined: Sep 01, 2005
Posts: 177
|
|
|
I prefer sub-queries if only I really needed. Depending on your data, table and index structure performance may change, but simple joins would do better most 8 of 10.
|
 |
Christophe Verré
Marshal
Joined: Nov 24, 2005
Posts: 14361
|
|
|
One more thing. id3alias is not joined to any other tables.
|
[SCBCD Wall of Fame] [My Blog]
All roads lead to JavaRanch
Help Japan. Make a donation.
|
 |
Martin Vajsar
Bartender
Joined: Aug 22, 2010
Posts: 1219
|
|
Joe Harry wrote:Do you mean joins perform better than sub queries?
It eventually depends on the actual database you're using, but generally join is the most common operation databases would be expected to do, therefore databases should be good at doing joins. Join would be my first choice, I go for subquery only when it is easier to write the SQL statement that way. With three tables involved, it is probably not the case.
Moreover, Oracle can internally process subqueries as joins (and vice versa). You can always compare the generated plans and performance of the two approaches, if still in doubt.
|
 |
 |
|
|
subject: Subquery help needed
|
|
|