Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
Discussion GroupsFormsForms ProgrammingQueriesModules / DAO / VBAReports / PrintingMacrosDatabase DesignSecurityConversionImporting / LinkingSQL Server / ADPMultiuser / NetworkingReplicationSetup / ConfigurationDeveloper ToolkitsActiveX ControlsNew UsersGeneral 1General 2
Access DirectoryToolsTutorialsUser Groups
Related Topics
SQL ServerOther DB ProductsMS OfficeMore Topics ...

MS Access Forum / General 1 / June 2006

Tip: Looking for answers? Try searching our database.

Results in Parallel columns

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
vivekian - 14 Jun 2006 22:26 GMT
Hi ,

I need to place the results of two different queries in the same result
table parallel to each other.
So if the result of the first query is

1   12
2   34
3   45

and the second query is

1  34
2  44
3  98

the results should be displayed as

1   12    34
2   34    44
3   45    98

If a union is done for both the queries , we get the results in rows.
How can the above be done.

Thanks in advance,
vivekian
pietlinden@hotmail.com - 14 Jun 2006 23:03 GMT
> Hi ,
>
[quoted text clipped - 17 lines]
> 2   34    44
> 3   45    98

SELECT qry1.fld1 As FirstField, qry1.fld2 As SecondField, qry2.fild2 as
ThirdField
FROM qry1 INNER JOIN qry2 ON qry1.Field1=qry2.fld1
ORDER BY FirstField
Gene Wirchenko - 14 Jun 2006 23:10 GMT
>I need to place the results of two different queries in the same result
>table parallel to each other.
[quoted text clipped - 3 lines]
>2   34
>3   45

         select ... into cursor one

>and the second query is
>
>1  34
>2  44
>3  98

         select ... into cursor two

>the results should be displayed as
>
>1   12    34
>2   34    44
>3   45    98

         select one.*,two.*
         from one full outer join two on one.pk=two.pk
with suitable changes for DBMS and table and column names.

>If a union is done for both the queries , we get the results in rows.
>How can the above be done.

Sincerely,

Gene Wirchenko
Mike C# - 14 Jun 2006 23:29 GMT
CREATE TABLE #a (Idx INT NOT NULL PRIMARY KEY,
Val INT NOT NULL)

CREATE TABLE #b (Idx INT NOT NULL PRIMARY KEY,
Val INT NOT NULL)

INSERT INTO #a (Idx, Val)
SELECT 1, 12
UNION SELECT 2, 34
UNION SELECT 3, 45

INSERT INTO #b (Idx, Val)
SELECT 1, 34
UNION SELECT 2, 44
UNION SELECT 3, 98

SELECT a.Idx, a.Val, b.Val
FROM #a a
INNER JOIN #b b
ON a.Idx = b.Idx
ORDER BY a.Idx

DROP TABLE #a
DROP TABLE #b

> Hi ,
>
[quoted text clipped - 23 lines]
> Thanks in advance,
> vivekian
Larry Linson - 15 Jun 2006 04:26 GMT
If I understand the question, my vote goes to Piet's solution. If you have
unmatched rows in either Query, then you'd need something a bit different.

Larry Linson
Microsoft Access MVP

> Hi ,
>
[quoted text clipped - 23 lines]
> Thanks in advance,
> vivekian
pietlinden@hotmail.com - 15 Jun 2006 06:04 GMT
Hang on a minute... I guess my answer was a bit premature before.  What
database are you using to do this?  If you're using Oracle, you can use
a full outer join and PL/SQL to do it.

If you're using Access, it's a different kettle of fish, because Access
doesn't support full outer joins.

So end the suspense.  What database are you doing this in?  (Or just
target your post to the relevant database group).  The answer will
largely depend on that, since Oracle, Access, SQL Server, and DB2 all
have their own implementations of the SQL92 standard...
vivekian - 15 Jun 2006 14:22 GMT
> Hang on a minute... I guess my answer was a bit premature before.  What
> database are you using to do this?

using SQL Server

thanks,
vivekian
-CELKO- - 15 Jun 2006 18:18 GMT
>>I need to place the results of two different queries in the same result table parallel to each other. <<

This is not a table; the rows of a table model elements of a set of the
same kind of thing.  What you want is a display kludge to show, say,
automobiles and squid as if they were the same kind of things.

Here is your kludge, since people here often gripe that I do not post
the bad code the OP wants:

SELECT *, ROW_NUMBER() OVER(ORDER BY duh) AS lft_nbr
FROM Foo
FULL OUTER JOIN
SELECT *, ROW_NUMBER() OVER(ORDER BY doh) AS rgt_nbr
FROM Bar
ON Foo.lft_nbr = Bar.rgt_nbr;

The right way is handle display issues in the applications and front
ends, not the RDBMS.
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.