Solved

SQL Statment

Posted on 2010-11-19
5
451 Views
Last Modified: 2012-05-10
What is wrong with this code? i get this error

 System.Data.SqlClient.SqlException: The multi-part identifier "Employee.ID" could not be bound.
SELECT        Employees.title, Employees.firstName, Employees.lastName, Addresses.Line1, Addresses.Line2, Addresses.Line3, Addresses.City, Addresses.Postcode
FROM            Employees INNER JOIN
                         Addresses ON Employees.addressId = Addresses.ID
WHERE        (Employees.ID NOT IN
                             (SELECT        EmployeeID
                               FROM            ExpenceForms))

Open in new window

0
Comment
Question by:aaron-macleod
[X]
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
5 Comments
 
LVL 29

Accepted Solution

by:
sammySeltzer earned 500 total points
ID: 34173971
I think it should be something like this:

SELECT Employees.title, Employees.firstName, Employees.lastName, Addresses.Line1, 
Addresses.Line2, Addresses.Line3, Addresses.City, Addresses.Postcode
FROM   Employees INNER JOIN
                         Addresses ON Employees.addressId = Addresses.ID
WHERE  Employees.ID NOT IN (SELECT ExpenceForms.EmployeeID
                               FROM ExpenceForms)

Open in new window

0
 
LVL 34

Expert Comment

by:Paul MacDonald
ID: 34173985
You have both Employee.ID and EmployeeID.  Are they both present?
0
 
LVL 70

Expert Comment

by:Éric Moreau
ID: 34174048
your exception has Employee while your query as EmployeeS. do you have a typo?
0
 
LVL 41

Expert Comment

by:ralmada
ID: 34174058
>> The multi-part identifier "Employee.ID" could not be bound.<<
That query doesn't seem to be producing that error. The error is caused because you are trying to use a column named ID from a table called (or aliased) "Employee" (without "s" at the end) . I don't see anywhere in the above query the "Employee.ID" expression.

Anyway, check your column and alias to ensure that they match with your current tables definition.

Also, another way of doing this query is
SELECT  Employees.title, 
	Employees.firstName, 
	Employees.lastName, 
	Addresses.Line1, 
	Addresses.Line2, 
	Addresses.Line3, 
	Addresses.City, 
	Addresses.Postcode
FROM    Employees 
INNER JOIN Addresses ON Employees.addressId = Addresses.ID
INNER JOIN ExpenceForms ON Employees.ID <> ExpenceForms.EmployeeID

Open in new window

0
 
LVL 41

Expert Comment

by:ralmada
ID: 34174063
crap, too late
0

Featured Post

Industry Leaders: 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!

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
SQL Not Equal To not working as expected 11 27
invoke-sqlcmd help 5 34
VM SQL server license. 1 67
Need SQL Query improved for multiple column joins 2 11
JSON is being used more and more, besides XML, and you surely wanted to parse the data out into SQL instead of doing it in some Javascript. The below function in SQL Server can do the job for you, returning a quick table with the parsed data.
A Stored Procedure in Microsoft SQL Server is a powerful feature that it can be used to execute the Data Manipulation Language (DML) or Data Definition Language (DDL). Depending on business requirements, a single Stored Procedure can return differe…
Using examples as well as descriptions, and references to Books Online, show the different Recovery Models available in SQL Server and explain, as well as show how full, differential and transaction log backups are performed
Via a live example, show how to set up a backup for SQL Server using a Maintenance Plan and how to schedule the job into SQL Server Agent.

751 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