Toda una clave primaria es un valor que hemos determinado que es el valor de mayor importancia en un registro. Si esa clave es un int con signo, un int sin signo, una cadena, un blob (en realidad, hay límites) o un UUID (o cualquier nombre que tome hoy), el hecho sigue siendo que es una clave, y que es La cosa de suma importancia.
Como no estamos obligados a usar solo números orientados positivamente para nuestras claves, tiene sentido considerar que un int con signo solo irá a ~ 2 mil millones, mientras que un int sin signo irá a ~ 4 mil millones. Pero no hay nada de malo en usar un int con signo, establecer el valor inicial en ~ -2 mil millones y establecer un incremento de uno. Después de ~ 2 mil millones de registros, llegará a "cero" y luego continuará a ~ 2 mil millones.
En cuanto a por qué sería útil tener "claves negativas" en una tabla, esa es la misma pregunta que "por qué es útil tener claves en una tabla". El "valor" de una clave no tiene impacto en su estado como clave. Una clave es una clave es una clave.
Lo importante es si la clave es válida.
En cuanto a por qué sería útil permitir claves que fueran negativas, puedo sugerir algunas razones:
¿Qué sucedería si quisiera indicar las devoluciones en un sistema de ventas como números de pedido de ventas negativos, que coincidían con el número de pedido de ventas positivo, lo que facilita la correlación (esto es ingenuo y está mal diseñado, pero funcionaría en un sentido de "hoja de cálculo").
¿Qué pasaría si quisieras tener una tabla de usuarios e indicar que los que tenían números negativos estaban controlados por el sistema?
Podría continuar, pero en realidad la única razón por la que el número que es negativo es importante es si usted o yo le asignamos importancia. Aparte de eso, no hay una gran razón para que el valor de una clave tenga alguna relación con la clave misma.