PostgreSQL 查询,LIKE 运算符

PostgreSQL query, LIKE operator

文档告诉我 LIKENOT LIKE 在 SQL 中用于搜索单元格 contain/starts/ends 是否包含某些字符。

我试图在 PostgreSQL 中使用它,它告诉我运算符不存在。我的查询:

SELECT * FROM "City"."models" 
WHERE (("City"."models".identifier NOT LIKE'%$%') 
AND
     (("City"."models".id LIKE '%2%') 
     OR 
     ("City"."models".id LIKE '%1%'))) 

ORDER BY "City"."models".town_id ASC LIMIT 10

列类型:

identifier->uuid
id->int
town_id->int

我的错误在哪里?

试试这个:

SELECT * FROM "City"."models" 
WHERE (("City"."models".identifier::varchar NOT LIKE'%$%') 
AND
     (("City"."models".id::varchar LIKE '%2%') 
     OR 
     ("City"."models".id::varchar LIKE '%1%'))) 

ORDER BY "City"."models".town_id ASC LIMIT 10