There are next to none instructions how the operator 'like' works when getting HubDB table rows through API - at least it doesn't work like the SQL 'like', as it doesn't accept (URL encoded) % wildcards.
However, at the least it seems to work like the 'icontains' operator, but case-sensitively. So, my expectation would be that using the operator 'not_like' it would return all the other rows than with the 'like' operator. But it also returns exactly the same rows. So, I believe this is a bug.
See for yourself. This GET query returns two rows from one of my tables (listing some ebook & video content and such):
It returns two rows, and the url column is the second one, and the results are correct. However, this query returns exactly those two rows, not all the 41 others rows that there are on the table.
This seems to happen whatever I put after the _ __not_like= _.