Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17


Cartesian-Join with the blank table

Posted on 2008-06-25
Medium Priority
Last Modified: 2012-06-27
Sample Query:                                                                                    
SELECT     *                                                                                      
FROM       TEMP01,TEMP02,TEMP03,TEMP04,TEMP05,TEMP06,TEMP07,TEMP08,TEMP09,TEMP10,                
I have to DO the Cartesian-Join with all the 22 Tables, The problem is if any one of the table is
blank then the result set also empty,                                                            
How can i handle this?. In the table set any table/Combination can be blank.                      
Question by:midwestexp
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
LVL 74

Expert Comment

ID: 21869987
you would have to do an outer join to any table that might be missing data.

however,  are you sure you really need to do a 22-way join?

Author Comment

ID: 21870935
Yes i have to include all the 22 Tables, Please explain me How to Do that.
LVL 10

Expert Comment

ID: 21871412
is this a trick question?  I'm trying to think of a reason to ever do this.
do all of the tables have the same number of columns?
what is the ddl for temp01?

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Author Comment

ID: 21871705
Each table have only one column,

create table temp01 (
    a varchar2(1)
LVL 27

Accepted Solution

sujith80 earned 2000 total points
ID: 21872064
Cartesian join of 22 tables will be a bad idea, if they are big tables. Probably you can do something programmatically to achieve the actual goal behid this.
To answer the question you may use a query like this, extend it for the 22 tables.
select * from 
(select * from TEMP01 union all select null from dual where not exists(select 1 from TEMP01 )) , 
(select * from TEMP02 union all select null from dual where not exists(select 1 from TEMP02 )) , 
(select * from TEMP03 union all select null from dual where not exists(select 1 from TEMP03 )) 

Open in new window


Author Closing Comment

ID: 31470774
Thank You Very Much.

Featured Post

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction A previously published article on Experts Exchange ("Joins in Oracle", makes a statement about "Oracle proprietary" joins and mixes the join syntax with gen…
From implementing a password expiration date, to datatype conversions and file export options, these are some useful settings I've found in Jasper Server.
This video shows information on the Oracle Data Dictionary, starting with the Oracle documentation, explaining the different types of Data Dictionary views available by group and permissions as well as giving examples on how to retrieve data from th…
This video shows how to Export data from an Oracle database using the Original Export Utility.  The corresponding Import utility, which works the same way is referenced, but not demonstrated.

715 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question