在PostgreSQL中没有过滤UUID

问题描述

我想在没有匹配uuid的值的sql中进行过滤。也就是说,where条件的条件是没有行匹配。

使用常规int4 ID,我会这样做:

where my_id = -1

如果我用uuid做同样的事情,我得到:

where my_uuid = '-1'

我得到一个错误

ERROR: invalid input Syntax for type uuid: "-1"

如何使用uuid执行此操作?我需要使用=,所以格式为

where my_uuid is null

别为我工作。预先感谢!

解决方法

'00000000-0000-0000-0000-000000000000'::uuid

对于integer来说,“不可能的值”与-1一样好(实际上并不是不可能的)。