Solved

How to match trailing whitespace

Posted on 2012-04-02
7
340 Views
Last Modified: 2012-06-27
I have a field that I need to match the string however there is trailing white space on the end.

How do I grab everything that matches the expression including any trailing whitespace?

WHERE field = 'S-34.5X3.5M' should return the same result as WHERE filed LIKE 'S-34.5X3.5M' however due to the trailing white space the first returns a result while the second does not.

I do not want things like 'S-34.5X3.5MH' and 'S-34.5X3.5M R S  RM' returned
0
Comment
Question by:turn123
  • 4
  • 3
7 Comments
 
LVL 9

Expert Comment

by:damerval
ID: 37798022
Hi,
You can user LTRIM and RTRIM to remove trailing and leading spaces respectively.

HTH,

Philippe
0
 
LVL 11

Author Comment

by:turn123
ID: 37798033
Thank you Philippe.

Would you mind giving me an example of how to use this in a query using LIKE to find the correct records?
0
 
LVL 9

Expert Comment

by:damerval
ID: 37798333
Sure, although the idea here is specifically not to use LIKE (in order to avoid returning the values you don't want).

SELECT field1, field2 from MYTABLE
WHERE RTRIM(field) = 'S-34.5X3.5M'

If your database is case sensitive (off by default) then you may want to use UPPER to convert all letters to uppercase first, to ensure matches for all cases:

WHERE UPPER(RTRIM(field)) = 'S-34.5X3.5M'

HTH,

Philippe
0
Free Gift Card with Acronis Backup Purchase!

Backup any data in any location: local and remote systems, physical and virtual servers, private and public clouds, Macs and PCs, tablets and mobile devices, & more! For limited time only, buy any Acronis backup products and get a FREE Amazon/Best Buy gift card worth up to $200!

 
LVL 11

Author Comment

by:turn123
ID: 37798513
Hi Philippe,

Specifically my problem is that I need to use LIKE. The example here had the wild card replaced to show the problem (the record exists but LIKE won't pick it up even with the EXACT SAME value as the = query as due to the trailing white space).  I apologize if I was unclear.

The actual LIKE ''%-34.5X3.5M'' where % could be quite a few different values and more values could be added in the future.

Your thoughts?
0
 
LVL 9

Accepted Solution

by:
damerval earned 250 total points
ID: 37798595
Have you tried

WHERE UPPER(RTRIM(field)) LIKE '%-34.5X3.5M' ?
0
 
LVL 9

Expert Comment

by:damerval
ID: 37798604
P.S. You can use the underscore (_) character to match a single character, as well as braces ([]) to match any character within a range. More detail, and some great examples at
http://msdn.microsoft.com/en-us/library/aa933232%28v=sql.80%29.aspx

HTH,

Philippe
0
 
LVL 11

Author Closing Comment

by:turn123
ID: 37798901
Pefect thank you!
0

Featured Post

IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

Foreword In the years since this article was written, numerous hacking attacks have targeted password-protected web sites.  The storage of client passwords has become a subject of much discussion, some of it useful and some of it misguided.  Of cou…
Foreword This is an old article.  Instead of using the MySQL extension that was used in the original code examples, please choose one of the currently supported database extensions instead.  More information is available here: MySQLi / PDO (http://…
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…
This video explains how to create simple products associated to Magento configurable product and offers fast way of their generation with Store Manager for Magento tool.

758 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

22 Experts available now in Live!

Get 1:1 Help Now