The underscore character, when used with the LIKE operator, matches any single character. When using wildcards as literals, you need to square bracket the character, like '%[_]%[_]%[_]%' See https://docs.microsoft.com/en-us/sql/t-sql/language-elements/like-transact-sql?view=sql-server-2017#using-wildcard-characters-as-literals To help me limit the noise with the huge dataset, I employed a simple pattern match to bucket out returned rows. I was more interested in the classifications and the broad relationships between the rows. I used something like CASE WHEN [Offering] LIKE '%_%_%_%' THEN 'XXX999_209999_X_X' My expectation was a field like 'AAA999_201600_A_B' would appear as 'XXX999_209999_X_X', and it did. But, it also changed 3 digit character entries like 'All' to 'XXX999_209999_X_X'. Turns out that _ is a single character wildcard, so '%_%_%_%' matched the word ‘Al...