Променете вашия WHERE състояние като това:
WHERE mycolumn LIKE '%\_%' ESCAPE '\'
Това е един от начините, по които Oracle поддържа escape символи. Тук дефинирате escape символа с escape ключова дума. За подробности вижте тази връзка в Oracle Docs.
'_' и '%' са заместващи знаци в LIKE опериран оператор в SQL.
_ символ търси присъствие на (който и да е) един единствен знак. Ако търсите по columnName LIKE '_abc' , ще ви даде резултат с редове с 'aabc' , 'xabc' , '1abc' , '#abc' но НЕ 'abc' , 'abcc' , 'xabcd' и така нататък.
'%' символът се използва за съвпадение на 0 или повече броя знаци. Това означава, че ако търсите по columnName LIKE '%abc' , ще ви даде резултат с 'abc' , 'aabc' , 'xyzabc' и така нататък, но без 'xyzabcd' , 'xabcdd' и всеки друг низ, който не завършва с 'abc' .
Във вашия случай сте търсили по '%_%' . Това ще даде на всички редове с тази колона един или повече знака, което означава всякакви знаци, като стойност. Ето защо получавате всички редове, въпреки че няма _ в стойностите на колоната си.