The documentation of the function concat states: Concatenate all arguments. NULL arguments are ignored. Intuitively I would expect that
concat(NULL, NULL) IS NULL
but this is not the case as it equals the empty string. As no empty string was passed, the empty string seems to come from nowhere. I found this behavior not immediately clear from the documentation..