Filter by using in for SQL Server
You could also split the string and then search on the splitted values.
An example could be by creating and using this function.

Starting from SQL Server 2016 you could use the built in STRING_SPLIT() function.

Creating the function from the blogpost and executing this query afterwards

SELECT DISTINCT Col1,Col2 
FROM dbo.Searching
CROSS APPLY dbo.fnSplitString(col2,',')
WHERE splitdata in ('ABS','MCM');


Result

Col1    Col2
1   ACA,ABS,PHR
3   MCM


DB&lt;>Fiddle

An optimization could be proactively splitting the table into a permanent one so you don't need to do splitting on the entire table everytime.  (If the values are static)



EDIT

Comment by @Erikdarling


  There are better ways to split strings: Comparing string splitting /
  concatenation methods, including a much better one at SSC by Jeff
  Moden.


The function by Jeff Moden

After creating the function in his blogpost, you could use a query that resembles the previous one.

  SELECT Col1,Col2
  FROM dbo.Searching
  CROSS APPLY dbo.DelimitedSplit8k(Col2,',') split
  WHERE split.Item in ('ABS','MCM');


DB&lt;>Fiddle