If you do not close the square bracket, the result is not indicated.
However, the story closes when you close the bracket, i.e.
select * from table1 where code like N'%[blah%]%'
In this case, it becomes a match for (any) + any of ('b','l','a','h','%') + (any) . For SQL Server, you can escape characters using the ESCAPE clause.
select * from table1 where code like N'%\[blah%\]%' escape '\'
SQL Fiddle with Examples
source share