Estou perguntando isso, porque eu estava trabalhando principalmente com a Oracle, mas, no ano passado, tenho dobrado com o PostGIS e o SQLServer 2008. A maioria das funções espaciais no Oracle não funciona sem um índice espacial retornando o erro ORA-13226:
13226, 00000, "interface não suportada sem um índice espacial" // * Causa: a tabela de geometria não possui um índice espacial. // * Ação: verifique se a tabela de geometria referenciada no operador espacial possui um índice espacial.
Para mim, isso faz sentido. Você executa uma consulta espacial = deve ter um índice espacial. Mas, tanto quanto eu entendo, nem o PostGIS, nem o SQL Serve exigem isso. O PostGIS até parece ter funções (_ * por exemplo, _STContains) que EXPLICITAMENTE não usarão o índice espacial.
Portanto, a questão é: existem casos em que você NÃO deve usar um índice espacial? Não necessariamente se é uma abordagem de “pegar ou largar”, ou seja, não fará diferença, mas onde NÃO usar o índice espacial afetará o desempenho? Para mim, a última frase é uma contradição em termos, mas por que o PostGIS forneceria essas funções?