|
Posted by Erland Sommarskog on 09/06/05 10:18
(chudson007@hotmail.com) writes:
> With the syntax below, why is field1a not "A" if field1 does not
> contain "_"
>
>
>
> SELECT Field1a = CASE WHEN (field1 LIKE '%_%') THEN (charindex('_',
> field1)) ELSE 'A' END, field1
> FROM [Table1]
In SQL _ is a wildcard for exactly one occurrance of one characater. Thus
%_% matches anything but the empty string. Change to %[_]% to get what you
want.
....by the way, CASE is an expression, not a statement, in SQL.
--
Erland Sommarskog, SQL Server MVP, esquel@sommarskog.se
Books Online for SQL Server SP3 at
http://www.microsoft.com/sql/techinfo/productdoc/2000/books.asp
Navigation:
[Reply to this message]
|