Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 SQL Server 2005 Forums
 Transact-SQL (2005)
 The multi-part identifier could not be bound

Author  Topic 

foamy
Starting Member

12 Posts

Posted - 2008-10-24 : 09:01:51
Hi guys,

I'm not sure this is the correct forum for this, but here goes:

I'm trying execute the statement below, but I keep getting the error:
Msg 4104, Level 16, State 1, Line 1
The multi-part identifier "SALESTABLE.SALESNUMBER" could not be bound.

What am I doing wrong here?

SELECT SALESTABLE.*, SALESTRANS.*, DEBINVJOUR.*, EXCHANGECODERATE.*
FROM SALESTRANS
INNER JOIN DEBINVJOUR ON SALESTABLE.SALESNUMBER = DEBINVJOUR.SALESNUMBER
INNER JOIN SALESTABLE ON SALESTRANS.SALESNUMBER = SALESTABLE.SALESNUMBER
INNER JOIN EXCHANGECODERATE ON SALESTABLE.EXCHANGECODE = EXCHANGECODERATE.EXCHANGECODE
WHERE SALESTABLE.DEBTORACCOUNT = ' 42914411'
ORDER BY SALESTABLE.CREATEDATE

Thanks in advance!

madhivanan
Premature Yak Congratulator

22864 Posts

Posted - 2008-10-24 : 09:05:43
SELECT sales.*, trans.*, deb.*, ex.*
FROM SALESTRANS as trans
INNER JOIN DEBINVJOUR as deb ON SALESTABLE.SALESNUMBER = deb.SALESNUMBER
INNER JOIN SALESTABLE as sales ON trans.SALESNUMBER = sales.SALESNUMBER
INNER JOIN EXCHANGECODERATE as ex ON sales.EXCHANGECODE = ex.EXCHANGECODE
WHERE sales.DEBTORACCOUNT = ' 42914411'
ORDER BY sales.CREATEDATE



Madhivanan

Failing to plan is Planning to fail
Go to Top of Page

foamy
Starting Member

12 Posts

Posted - 2008-10-24 : 09:23:42
Thanks for the quick reply :D

Still getting the error though. Could you tell me what it is I'm doing wrong? I've never used inner joins before, so I'm guessing my way through it...

EDIT: Your edited reply didn't work either :( Same error...
before you ask, SALESTABLE.SALESNUMBER does exist...
Go to Top of Page

sodeep
Master Smack Fu Yak Hacker

7174 Posts

Posted - 2008-10-24 : 09:33:35
SELECT SALESTABLE.*, SALESTRANS.*, DEBINVJOUR.*, EXCHANGECODERATE.*
FROM SALESTRANS
INNER JOIN DEBINVJOUR ON SALESTRANS.SALESNUMBER = DEBINVJOUR.SALESNUMBER
INNER JOIN SALESTABLE ON SALESTABLE.SALESNUMBER = DEBINVJOUR.SALESNUMBER
INNER JOIN EXCHANGECODERATE ON SALESTABLE.EXCHANGECODE = EXCHANGECODERATE.EXCHANGECODE
WHERE SALESTABLE.DEBTORACCOUNT = ' 42914411'
ORDER BY SALESTABLE.CREATEDATE
Go to Top of Page

foamy
Starting Member

12 Posts

Posted - 2008-10-27 : 03:17:13
quote:
Originally posted by sodeep

SELECT SALESTABLE.*, SALESTRANS.*, DEBINVJOUR.*, EXCHANGECODERATE.*
FROM SALESTRANS
INNER JOIN DEBINVJOUR ON SALESTRANS.SALESNUMBER = DEBINVJOUR.SALESNUMBER
INNER JOIN SALESTABLE ON SALESTABLE.SALESNUMBER = DEBINVJOUR.SALESNUMBER
INNER JOIN EXCHANGECODERATE ON SALESTABLE.EXCHANGECODE = EXCHANGECODERATE.EXCHANGECODE
WHERE SALESTABLE.DEBTORACCOUNT = ' 42914411'
ORDER BY SALESTABLE.CREATEDATE


Got it, thanks!
Go to Top of Page

rico1931
Starting Member

37 Posts

Posted - 2009-01-27 : 13:53:07
awesome helped me out thanks!
Go to Top of Page

sodeep
Master Smack Fu Yak Hacker

7174 Posts

Posted - 2009-01-27 : 14:00:26
Better use table alias so you don't get confused.
Go to Top of Page

Kokkula
Starting Member

41 Posts

Posted - 2009-01-28 : 00:53:47
Hello,

Error:
In the belowquery in the first join you are referring SalesTable.SalesNumber but at that point the tables is not in the query so it is throwing the error. So you need to interchange the positions of join tables thats it.

SELECT SALESTABLE.*, SALESTRANS.*, DEBINVJOUR.*, EXCHANGECODERATE.*
FROM SALESTRANS
INNER JOIN DEBINVJOUR ON SALESTABLE.SALESNUMBER = DEBINVJOUR.SALESNUMBER
INNER JOIN SALESTABLE ON SALESTRANS.SALESNUMBER = SALESTABLE.SALESNUMBER
INNER JOIN EXCHANGECODERATE ON SALESTABLE.EXCHANGECODE = EXCHANGECODERATE.EXCHANGECODE
WHERE SALESTABLE.DEBTORACCOUNT = ' 42914411'
ORDER BY SALESTABLE.CREATEDATE

Sodeep placed it in the correct way.

Thanks,
Pavan
Go to Top of Page
   

- Advertisement -