Solved

Oracle Union Statement

Posted on 2011-03-08
22
468 Views
Last Modified: 2012-05-11
I was trying to get some financial data to relate to eachother and after many tries, I thought I would try a union. I've never done one, so I"m a little iffy on how to write it for Oracle. My first query contains 10 fields that I need to have "dummy" fields in the 2nd query and 3 fields in the second query that need to have "dummy" records in the first query. Is using null fields and effective way to do this? Can someone help. Thank you

1st Query:

SELECT  "ACACTIVITY"."ACTIVITY_GRP",
              "ACACTIVITY"."ACTIVITY",
              "ACACTIVITY"."BALANCE_AMOUNT"
              "ACACTGRP"."DESCRIPTION",
              "ACACTIVITY"."DESCRIPTION",
              "ACACCTCAT"."DESCRIPTION",
              "ACACCTCAT"."ACCT_CATEGORY",
              "ACBUDDTL"."BALANCE",
      
Fields that need to be replicated to 2nd query:      
        "ACTRANS"."ACCOUNT", (Number)
        "ACTRANS"."ACCT_UNIT",(String)
        "ACTRANS"."SUB_ACCOUNT", (Number)
        "ACTRANS"."POSTING_DATE", (DateTime)
        "ACTRANS"."R_SYSTEM", (String)
        "ACTRANS"."REFERENCE", (String)
        "ACTRANS"."DESCRIPTION", (String)
        "ACTRANS"."TRAN_AMOUNT", (Number)
        "ACTRANS"."UNITS_AMOUNT", (Number)
        "ACTRANS"."ACT_CURRENCY"(String)

Second Query:

SELECT  "ACACTIVITY"."ACTIVITY_GRP",
      "ACACTIVITY"."ACTIVITY",
      "ACACTIVITY"."BALANCE_AMOUNT"
      "ACACTGRP"."DESCRIPTION",
      "ACACTIVITY"."DESCRIPTION",
      "ACACCTCAT"."DESCRIPTION",
      "ACACCTCAT"."ACCT_CATEGORY",
      "ACBUDDTL"."BALANCE",

  Fields that need to be replicated to 1st query:
      "ACCOMMITX"."ACTIVITY", (String)
      "ACCOMMITX"."ACCT_CATEGORY",(String)
      "ACCOMMITX"."TRAN_AMOUNT", (Number)
0
Comment
Question by:metalteck
  • 9
  • 7
  • 4
  • +1
22 Comments
 
LVL 31

Expert Comment

by:awking00
Comment Utility
See attached.
query.txt
0
 
LVL 76

Expert Comment

by:slightwv (䄆 Netminder)
Comment Utility
Not sure I understand exactly what you are thinking a union will do for you but in Oracle to set the 'dummy' columns is pretty easy. Just give them the an alias in the first select so i has a column name and you're good to go.

select 'Hello' col1, null dummy_col from dual
union
select 'Hello', 'Fred' from dual
/
0
 
LVL 76

Expert Comment

by:slightwv (䄆 Netminder)
Comment Utility
caught typing...
0
 
LVL 31

Expert Comment

by:awking00
Comment Utility
That's usually my problem :-)
0
 

Author Comment

by:metalteck
Comment Utility
Guys, I was able to run the sql query succesfully, but it is only pulling information from the first query...
Union-sql.txt
0
 
LVL 31

Expert Comment

by:awking00
Comment Utility
What does the query after the union operator return by itself?
0
 

Author Comment

by:metalteck
Comment Utility
The only thing that is displayed are everything in the first query up to col13.
col1-col10 don't show up and neither do any of the fields such as ACCOMMITX.TRAN_AMOUNT.
0
 
LVL 31

Expert Comment

by:awking00
Comment Utility
I just wanted to see what the second query (the one after the union operator) returns by itself, without the first query. Also, can you post the precise query that you submitted?
0
 

Author Comment

by:metalteck
Comment Utility
Attached is a screenshot of the 2nd query with the data I'm expecting.
The full query I'm using is in the .txt file.
Subquery.docx
Activity-Union.txt
0
 

Author Comment

by:metalteck
Comment Utility
I"m sorry, disregard the attached .txt file.
Here is the code:

SELECT  "ACACTIVITY"."ACTIVITY_GRP",
        "ACACTIVITY"."ACTIVITY",
            "ACACTIVITY"."BALANCE_AMOUNT",
        "ACACTGRP"."DESCRIPTION",
        "ACACTIVITY"."DESCRIPTION",
        "ACACCTCAT"."DESCRIPTION",
        "ACACCTCAT"."ACCT_CATEGORY",
            "ACBUDDTL"."BALANCE",       
        "ACTRANS"."ACCOUNT" AS ACTRANSACCT,
        "ACTRANS"."ACCT_UNIT" AS ACTRANSACCTUNIT,
        "ACTRANS"."SUB_ACCOUNT" AS ACTRANSSUBACT,
        "ACTRANS"."POSTING_DATE" AS ACTRANSPOSTDT,
        "ACTRANS"."R_SYSTEM" as ACTRANSYS,
        "ACTRANS"."REFERENCE" as ACTRANSREF,
        "ACTRANS"."DESCRIPTION" as ACTRANSDESC,
        "ACTRANS"."TRAN_AMOUNT" as ACTRANSAMT,
        "ACTRANS"."UNITS_AMOUNT" as ACTRANSUNIT,
        "ACTRANS"."ACT_CURRENCY" as ACTRANCURR,
        null as col11,
        null as col12,
        null as col13
                 
 FROM   ((("PROD"."ACACTIVITY" "ACACTIVITY" INNER JOIN "PROD"."ACACTGRP" "ACACTGRP" ON "ACACTIVITY"."ACTIVITY_GRP"="ACACTGRP"."ACTIVITY_GRP")
      INNER JOIN "PROD"."ACTRANS" "ACTRANS" ON "ACACTIVITY"."ACTIVITY"="ACTRANS"."ACTIVITY")
      INNER JOIN "PROD"."ACBUDDTL" "ACBUDDTL" ON ("ACACTIVITY"."ACTIVITY"="ACBUDDTL"."ACTIVITY") AND ("ACACTIVITY"."ACTIVITY_GRP"="ACBUDDTL"."ACTIVITY_GRP"))
      INNER JOIN "PROD"."ACACCTCAT" "ACACCTCAT" ON "ACTRANS"."ACCT_CATEGORY"="ACACCTCAT"."ACCT_CATEGORY"
Union
SELECT "ACACTIVITY"."ACTIVITY_GRP",
            "ACACTIVITY"."ACTIVITY",
            "ACACTIVITY"."BALANCE_AMOUNT",
            "ACACTGRP"."DESCRIPTION",
            "ACACTIVITY"."DESCRIPTION",
            "ACACCTCAT"."DESCRIPTION",
            "ACACCTCAT"."ACCT_CATEGORY",
            "ACBUDDTL"."BALANCE",
        null as col1,
        null as col2,
        null as col3,
        null as col4,
        null as col5,
        null as col6,
        null as col7,
        null as col8,
        null as col9,
        null as col10,
       "ACCOMMITX"."ACTIVITY",
           "ACCOMMITX"."ACCT_CATEGORY",
           "ACCOMMITX"."TRAN_AMOUNT" AS ACCOMMITXTRANAMT
       
 FROM   ((("PROD"."ACACTIVITY" "ACACTIVITY" LEFT OUTER JOIN "PROD"."ACCOMMITX" "ACCOMMITX" ON "ACACTIVITY"."ACTIVITY"="ACCOMMITX"."ACTIVITY")
      INNER JOIN "PROD"."ACACTGRP" "ACACTGRP" ON "ACACTIVITY"."ACTIVITY_GRP"="ACACTGRP"."ACTIVITY_GRP")
      INNER JOIN "PROD"."ACBUDDTL" "ACBUDDTL" ON ("ACACTIVITY"."ACTIVITY"="ACBUDDTL"."ACTIVITY") AND ("ACACTIVITY"."ACTIVITY_GRP"="ACBUDDTL"."ACTIVITY_GRP"))
      INNER JOIN "PROD"."ACACCTCAT" "ACACCTCAT" ON "ACCOMMITX"."ACCT_CATEGORY"="ACACCTCAT"."ACCT_CATEGORY"
0
 
LVL 76

Expert Comment

by:slightwv (䄆 Netminder)
Comment Utility
I believe what awking00 is asking is:  Does the second query, when run by itself, actually return data?
SELECT "ACACTIVITY"."ACTIVITY_GRP",
            "ACACTIVITY"."ACTIVITY", 
            "ACACTIVITY"."BALANCE_AMOUNT",
            "ACACTGRP"."DESCRIPTION", 
            "ACACTIVITY"."DESCRIPTION",
            "ACACCTCAT"."DESCRIPTION", 
            "ACACCTCAT"."ACCT_CATEGORY",
            "ACBUDDTL"."BALANCE",
        null as col1, 
        null as col2,
        null as col3, 
        null as col4, 
        null as col5, 
        null as col6, 
        null as col7,
        null as col8, 
        null as col9,
        null as col10,
       "ACCOMMITX"."ACTIVITY", 
           "ACCOMMITX"."ACCT_CATEGORY", 
           "ACCOMMITX"."TRAN_AMOUNT" AS ACCOMMITXTRANAMT
        
 FROM   ((("PROD"."ACACTIVITY" "ACACTIVITY" LEFT OUTER JOIN "PROD"."ACCOMMITX" "ACCOMMITX" ON "ACACTIVITY"."ACTIVITY"="ACCOMMITX"."ACTIVITY") 
      INNER JOIN "PROD"."ACACTGRP" "ACACTGRP" ON "ACACTIVITY"."ACTIVITY_GRP"="ACACTGRP"."ACTIVITY_GRP") 
      INNER JOIN "PROD"."ACBUDDTL" "ACBUDDTL" ON ("ACACTIVITY"."ACTIVITY"="ACBUDDTL"."ACTIVITY") AND ("ACACTIVITY"."ACTIVITY_GRP"="ACBUDDTL"."ACTIVITY_GRP")) 
      INNER JOIN "PROD"."ACACCTCAT" "ACACCTCAT" ON "ACCOMMITX"."ACCT_CATEGORY"="ACACCTCAT"."ACCT_CATEGORY"

Open in new window

0
PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

 

Author Comment

by:metalteck
Comment Utility
Yes, if I run the second query by itself, it returns data. I attached the screenshot of the second query and the results.
The problem is that none of the fields from the second query show up when I run the entire query.
0
 
LVL 76

Expert Comment

by:slightwv (䄆 Netminder)
Comment Utility
I can't open the DOCX at home so that will have to wait until tomorrow.

If the top query returns rows and the bottom query returns rows, the union HAS TO return rows.

I think I see what might be causing this.

You only assign column aliases for the TOP query.  These will become the column names.  setting them in the bottom query serves no purpose.


SELECT  "ACACTIVITY"."ACTIVITY_GRP",
        "ACACTIVITY"."ACTIVITY",
            "ACACTIVITY"."BALANCE_AMOUNT",
        "ACACTGRP"."DESCRIPTION",
        "ACACTIVITY"."DESCRIPTION",
        "ACACCTCAT"."DESCRIPTION",
        "ACACCTCAT"."ACCT_CATEGORY",
            "ACBUDDTL"."BALANCE",       
        "ACTRANS"."ACCOUNT" AS ACTRANSACCT,
        "ACTRANS"."ACCT_UNIT" AS ACTRANSACCTUNIT,
        "ACTRANS"."SUB_ACCOUNT" AS ACTRANSSUBACT,
        "ACTRANS"."POSTING_DATE" AS ACTRANSPOSTDT,
        "ACTRANS"."R_SYSTEM" as ACTRANSYS,
        "ACTRANS"."REFERENCE" as ACTRANSREF,
        "ACTRANS"."DESCRIPTION" as ACTRANSDESC,
        "ACTRANS"."TRAN_AMOUNT" as ACTRANSAMT,
        "ACTRANS"."UNITS_AMOUNT" as ACTRANSUNIT,
        "ACTRANS"."ACT_CURRENCY" as ACTRANCURR,
        null as col19,
        null as col20,
        null as col21
 FROM   ((("PROD"."ACACTIVITY" "ACACTIVITY" INNER JOIN "PROD"."ACACTGRP" "ACACTGRP" ON "ACACTIVITY"."ACTIVITY_GRP"="ACACTGRP"."ACTIVITY_GRP")
      INNER JOIN "PROD"."ACTRANS" "ACTRANS" ON "ACACTIVITY"."ACTIVITY"="ACTRANS"."ACTIVITY")
      INNER JOIN "PROD"."ACBUDDTL" "ACBUDDTL" ON ("ACACTIVITY"."ACTIVITY"="ACBUDDTL"."ACTIVITY") AND ("ACACTIVITY"."ACTIVITY_GRP"="ACBUDDTL"."ACTIVITY_GRP"))
      INNER JOIN "PROD"."ACACCTCAT" "ACACCTCAT" ON "ACTRANS"."ACCT_CATEGORY"="ACACCTCAT"."ACCT_CATEGORY"
Union
SELECT "ACACTIVITY"."ACTIVITY_GRP",
            "ACACTIVITY"."ACTIVITY",
            "ACACTIVITY"."BALANCE_AMOUNT",
            "ACACTGRP"."DESCRIPTION",
            "ACACTIVITY"."DESCRIPTION",
            "ACACCTCAT"."DESCRIPTION",
            "ACACCTCAT"."ACCT_CATEGORY",
            "ACBUDDTL"."BALANCE",
        null,
        null,
        null,
        null,
        null,
        null,
        null,
        null,
        null,
        null,
       "ACCOMMITX"."ACTIVITY",
           "ACCOMMITX"."ACCT_CATEGORY",
           "ACCOMMITX"."TRAN_AMOUNT"
 FROM   ((("PROD"."ACACTIVITY" "ACACTIVITY" LEFT OUTER JOIN "PROD"."ACCOMMITX" "ACCOMMITX" ON "ACACTIVITY"."ACTIVITY"="ACCOMMITX"."ACTIVITY")
      INNER JOIN "PROD"."ACACTGRP" "ACACTGRP" ON "ACACTIVITY"."ACTIVITY_GRP"="ACACTGRP"."ACTIVITY_GRP")
      INNER JOIN "PROD"."ACBUDDTL" "ACBUDDTL" ON ("ACACTIVITY"."ACTIVITY"="ACBUDDTL"."ACTIVITY") AND ("ACACTIVITY"."ACTIVITY_GRP"="ACBUDDTL"."ACTIVITY_GRP"))
      INNER JOIN "PROD"."ACACCTCAT" "ACACCTCAT" ON "ACCOMMITX"."ACCT_CATEGORY"="ACACCTCAT"."ACCT_CATEGORY"

Open in new window

0
 

Author Comment

by:metalteck
Comment Utility
I'm a newbie to unions and think I need to call the fields in the top query, but I don't know how to do that.
0
 
LVL 76

Expert Comment

by:slightwv (䄆 Netminder)
Comment Utility
>> I'm a newbie to unions

We were all newbs once at everything.  Unions aren't that difficult.  The good news is they are basically the same across all database platforms so any documentation that explains it should fit.

Check out:
http://en.wikipedia.org/wiki/Set_operations_(SQL)#UNION_operator

Basically, all the queries in the union (or union all -- no sorting needed) must have the same number of columns and those columns must be the same data type.

The names of the columns in the final resultset are derived from the columns and/or aliases provided in the very first query of the union.

>>I need to call the fields in the top query

I don't know what that means.

0
 

Author Comment

by:metalteck
Comment Utility
I"ve been reading on the forums lots of examples of naming each subquery, ex: table1, and then at the begining of the sql statement call the required field; table1.field1.
Don't know if this will resolve my problem or not, but I'm willing to try everything.
0
 
LVL 76

Expert Comment

by:slightwv (䄆 Netminder)
Comment Utility
You only need to fully qualify the table.column combinations when the columns might come from different tables.

When learning, keep it simple:

Given the following:
select 'Hello' topCol1, 'World' topCol2 from dual
union
select 'Goodbye' botCol1, 'World' botCol2 from dual
/


Look at the column names in sql*plus.  They will be called TOPCOL1 and TOPCOL2.

The double quotes you are using force Oracle to be case specific.  For what it's worth I would suggest you not use them.
0
 

Author Comment

by:metalteck
Comment Utility
Thanks, I eliminated all the double quotes and have name a field or two in the 2nd subquery. Unfortunately I'm still only pulling information pertaining to the first subquery when I run the union.
Please, when you have a chance, take a look and let me know if you come across any additional ideas I can try.

Thanks for all your help.
0
 
LVL 76

Expert Comment

by:slightwv (䄆 Netminder)
Comment Utility
I don't know how else we can help.  If the queries return results individually they have to do so when "union"ed.

It's the rules.

I can dummy up some tables, insert some sample data and show you that it works as described but I don't think that will help.

Unless I can reproduce your exact tables and data so I can reproduce the problem, there's nothing I can do.

The only think I can think of that might be causing issues is the tool you are using to run the query.

Please try from sql*plus.

Below is a simple test that shows what I think you're trying to do and produce the following output in my sqplplus:
--------------------------
Table dropped.


Table created.


1 row created.


Table dropped.


Table created.


1 row created.


Commit complete.


C C C C C C
- - - - - -
1 2   3 4 5
a b c

2 rows selected.
drop table tab1 purge;
create table tab1 (col1 char(1), col2 char(1), col3 char(1));
insert into tab1 values('a','b','c');

drop table tab2 purge;
create table tab2 (col1 char(1), col2 char(1), col4 char(1),col5 char(1), col6 char(1));
insert into tab2 values('1','2','3','4','5');
commit;

select col1, col2, col3, null col4, null col5, null col6 from tab1
union
select col1, col2, null col3, col4, col5, col6 from tab2
/

Open in new window

0
 
LVL 11

Expert Comment

by:yuching
Comment Utility
Hi metalteck:
It seem like you just want to display fields from table ACCOMMITX in the query.
Instead of using UNION, you should add in left outer join for the 1st query will do.

SELECT  "ACACTIVITY"."ACTIVITY_GRP", 
        "ACACTIVITY"."ACTIVITY", 
            "ACACTIVITY"."BALANCE_AMOUNT",
        "ACACTGRP"."DESCRIPTION", 
        "ACACTIVITY"."DESCRIPTION", 
        "ACACCTCAT"."DESCRIPTION", 
        "ACACCTCAT"."ACCT_CATEGORY",
            "ACBUDDTL"."BALANCE",       
        "ACTRANS"."ACCOUNT" AS ACTRANSACCT, 
        "ACTRANS"."ACCT_UNIT" AS ACTRANSACCTUNIT, 
        "ACTRANS"."SUB_ACCOUNT" AS ACTRANSSUBACT, 
        "ACTRANS"."POSTING_DATE" AS ACTRANSPOSTDT, 
        "ACTRANS"."R_SYSTEM" as ACTRANSYS, 
        "ACTRANS"."REFERENCE" as ACTRANSREF, 
        "ACTRANS"."DESCRIPTION" as ACTRANSDESC, 
        "ACTRANS"."TRAN_AMOUNT" as ACTRANSAMT, 
        "ACTRANS"."UNITS_AMOUNT" as ACTRANSUNIT, 
        "ACTRANS"."ACT_CURRENCY" as ACTRANCURR, 
        "ACCOMMITX"."ACTIVITY", 
        "ACCOMMITX"."ACCT_CATEGORY", 
        "ACCOMMITX"."TRAN_AMOUNT" AS ACCOMMITXTRANAMT
 FROM   "PROD"."ACACTIVITY" "ACACTIVITY" 
 INNER JOIN "PROD"."ACACTGRP" "ACACTGRP" ON "ACACTIVITY"."ACTIVITY_GRP"="ACACTGRP"."ACTIVITY_GRP"
 INNER JOIN "PROD"."ACTRANS" "ACTRANS" ON "ACACTIVITY"."ACTIVITY"="ACTRANS"."ACTIVITY"
 INNER JOIN "PROD"."ACBUDDTL" "ACBUDDTL" ON ("ACACTIVITY"."ACTIVITY"="ACBUDDTL"."ACTIVITY") AND ("ACACTIVITY"."ACTIVITY_GRP"="ACBUDDTL"."ACTIVITY_GRP") 
 INNER JOIN "PROD"."ACACCTCAT" "ACACCTCAT" ON "ACTRANS"."ACCT_CATEGORY"="ACACCTCAT"."ACCT_CATEGORY"
 LEFT OUTER JOIN "PROD"."ACCOMMITX" "ACCOMMITX" ON "ACACTIVITY"."ACTIVITY"="ACCOMMITX"."ACTIVITY"

Open in new window

0
 

Author Comment

by:metalteck
Comment Utility
I've tried adding the accommitx table to the first query, but all it does is cause duplication on the report. That's why I was trying the union.
0
 
LVL 11

Accepted Solution

by:
yuching earned 500 total points
Comment Utility
ok, please try this. It will select the max(acct_category) and sum(Tran_amount) from ACCOMMITX table before left join to the first query.
SELECT  "ACACTIVITY"."ACTIVITY_GRP", 
        "ACACTIVITY"."ACTIVITY", 
            "ACACTIVITY"."BALANCE_AMOUNT",
        "ACACTGRP"."DESCRIPTION", 
        "ACACTIVITY"."DESCRIPTION", 
        "ACACCTCAT"."DESCRIPTION", 
        "ACACCTCAT"."ACCT_CATEGORY",
            "ACBUDDTL"."BALANCE",       
        "ACTRANS"."ACCOUNT" AS ACTRANSACCT, 
        "ACTRANS"."ACCT_UNIT" AS ACTRANSACCTUNIT, 
        "ACTRANS"."SUB_ACCOUNT" AS ACTRANSSUBACT, 
        "ACTRANS"."POSTING_DATE" AS ACTRANSPOSTDT, 
        "ACTRANS"."R_SYSTEM" as ACTRANSYS, 
        "ACTRANS"."REFERENCE" as ACTRANSREF, 
        "ACTRANS"."DESCRIPTION" as ACTRANSDESC, 
        "ACTRANS"."TRAN_AMOUNT" as ACTRANSAMT, 
        "ACTRANS"."UNITS_AMOUNT" as ACTRANSUNIT, 
        "ACTRANS"."ACT_CURRENCY" as ACTRANCURR, 
        "ACCOMMITX"."ACTIVITY", 
        "ACCOMMITX"."ACCT_CATEGORY", 
        "ACCOMMITX"."TRAN_AMOUNT" AS ACCOMMITXTRANAMT
 FROM   "PROD"."ACACTIVITY" "ACACTIVITY" 
 INNER JOIN "PROD"."ACACTGRP" "ACACTGRP" ON "ACACTIVITY"."ACTIVITY_GRP"="ACACTGRP"."ACTIVITY_GRP"
 INNER JOIN "PROD"."ACTRANS" "ACTRANS" ON "ACACTIVITY"."ACTIVITY"="ACTRANS"."ACTIVITY"
 INNER JOIN "PROD"."ACBUDDTL" "ACBUDDTL" ON ("ACACTIVITY"."ACTIVITY"="ACBUDDTL"."ACTIVITY") AND ("ACACTIVITY"."ACTIVITY_GRP"="ACBUDDTL"."ACTIVITY_GRP") 
 INNER JOIN "PROD"."ACACCTCAT" "ACACCTCAT" ON "ACTRANS"."ACCT_CATEGORY"="ACACCTCAT"."ACCT_CATEGORY"
 LEFT OUTER JOIN (
 	Select "ACCOMMITX"."ACTIVITY", 
        Max("ACCOMMITX"."ACCT_CATEGORY") As "ACCT_CATEGORY", 
        Sum("ACCOMMITX"."TRAN_AMOUNT") As "TRAN_AMOUNT"
	From "PROD"."ACCOMMITX" 
	Group By "ACCOMMITX"."ACTIVITY"
 )"ACCOMMITX" ON "ACACTIVITY"."ACTIVITY"="ACCOMMITX"."ACTIVITY"

Open in new window

0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Join & Write a Comment

Suggested Solutions

Title # Comments Views Activity
Cross Outer Join 4 50
Oracle queries --Challenging Question 12 62
Oracle Database creation fails 5 36
Clone Oracle 12c Database 5 24
Cursors in Oracle: A cursor is used to process individual rows returned by database system for a query. In oracle every SQL statement executed by the oracle server has a private area. This area contains information about the SQL statement and the…
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, step by step, how to configure Oracle Heterogeneous Services via the Generic Gateway Agent in order to make a connection from an Oracle session and access a remote SQL Server database table.
Video by: Steve
Using examples as well as descriptions, step through each of the common simple join types, explaining differences in syntax, differences in expected outputs and showing how the queries run along with the actual outputs based upon a simple set of dem…

771 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

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now