Solved

SQL Query Error Joining Tables

Posted on 2009-07-16
3
179 Views
Last Modified: 2012-05-07
The below query I was hoping would ONLY show me criteria if for starters part.character03 = 'Package' along with other criteria, yet it still shows me values within Character03 that are OTHER THAN "Package"

I tried part.character03 = 'PACKAGE' and I get an errors saying:  The data types text and varchar are incompatible in the equal to operator.

Any help is appreciated
SELECT     part.partnum, part.character03, shipdtl.packnum
FROM         shipdtl INNER JOIN
                      part ON shipdtl.partnum = part.partnum
WHERE     (part.character03 LIKE 'PACKAGE') AND (shipdtl.packnum = 221) OR
                      (shipdtl.packnum = 222) OR
                      (shipdtl.packnum = 224)

Open in new window

0
Comment
Question by:chrisryhal
[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
  • 2
3 Comments
 
LVL 41

Accepted Solution

by:
ralmada earned 500 total points
ID: 24869030
What about this?
SELECT  part.partnum, 
	part.character03, 
	shipdtl.packnum
FROM    shipdtl 
INNER JOIN part ON shipdtl.partnum = part.partnum
WHERE     (part.character03 LIKE 'PACKAGE') AND (shipdtl.packnum in (221, 222, 224))

Open in new window

0
 
LVL 41

Expert Comment

by:ralmada
ID: 24869060
Btw, From books online, index entry Boolean expressions:

"Comparison operators test whether two expressions are the same. Comparison operators can be used on all expressions except expressions of the text, ntext, or image data types. "

If your character03 column is always (or even usually) under 8000 characters, you might consider to change to a varchar type.  Or you might want to implement two columns, one a smaller description, the other a text column that has long values.  Using the current column.

If not, then you will have to use LIKE or PATINDEX, or cast the values to a varchar (perhaps in a computed column) if you need to do this frequently and not on a really large value.
0
 
LVL 2

Author Closing Comment

by:chrisryhal
ID: 31604217
Awesome Thank You!
0

Featured Post

Free eBook: Backup on AWS

Everything you need to know about backup and disaster recovery with AWS, for FREE!

Question has a verified solution.

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

Introduction: When running hybrid database environments, you often need to query some data from a remote db of any type, while being connected to your MS SQL Server database. Problems start when you try to combine that with some "user input" pass…
This article explains how to reset the password of the sa account on a Microsoft SQL Server.  The steps in this article work in SQL 2005, 2008, 2008 R2, 2012, 2014 and 2016.
This is a high-level webinar that covers the history of enterprise open source database use. It addresses both the advantages companies see in using open source database technologies, as well as the fears and reservations they might have. In this…
Add bar graphs to Access queries using Unicode block characters. Graphs appear on every record in the color you want. Give life to numbers. Hopes this gives you ideas on visualizing your data in new ways ~ Create a calculated field in a query: …

729 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