Forum Discussion

mjjuk's avatar
mjjuk
Helper I
7 years ago

how to limit SQL query loads from another table?

Hi All, 

 

I am trying to load a table from an ODBC database but only bring in the values from a salesforce table I have loaded in .....

I have a column in the Salesforce table called "job Number"     (roughly 100k job numbers) I have been told that is too much for a keylist.

 

The ODBC table has millions of job numbers

I want to be able to run the ODBC SQL query to only bring back the job numbers in the Salesforce table  

 

 

The keylist way meant I used applied steps and brought in the Saleforce table then removed all other columns, then created a new column "'"&[Job Numbers]&"'" then combined to create the keylist... then in the SQL I wrote

Select 

job number,

visit report,

visit number,

status

from database.table2

where job number IN ("'"&[keylist]&"'")

 

it works fine for a small number but affects performance with larger data sets ..... I am hoping I have explained this well, I really could do with a more efficiant way 

 

2 Replies

  • If you can, the most efficient way to do this would be to load the Salesforce job numbers into a table in your other database. Then you could do a simple join between the two data sets. Optimizing joins across data stored in different physical sources is difficult. At some point you have to get the data into a common location so that you can do the comparison.

    • mjjuk's avatar
      mjjuk
      Helper I

      I was hoping some sort of WHERE clause could be used but I dont know how to reference the Salesforce table in SQL