Truy vấn đầu tiên của bạn sẽ đúng nếu bạn sử dụng AND
thay vì OR
.
Bạn có thể thấy logic đơn giản hơn như sau:
where not (city like 'A%' or city like 'E%' or . . . ) and
. . .
Theo quy tắc logic, điều này tương đương với:
where city not like 'A%' and city not like 'E%' and . . . ) and
. . .
Đối với biểu thức chính quy, nó chỉ có phép so sánh ở đầu chuỗi:
where not regexp_like(lower(city), '^[aeiou].*[aeiou]$')