2011/12/15 Edson neto <[email protected]> > Bom dia pessoal, > > Tenho um software que faz a leitura de placas de veiculos. Essa informação > é armazenada em uma tabela de passagens de veículos. Porém para cada placa > lida o software pode trazer n outras leituras chamadas de apelidos. Esses > apelidos podem ser consultados por parte de seu conteúdo. Ex. (placalida > 'AAA1111') apelidos ('AA111','AGUA','ABC11'); o exemplo é hipotético. > O problema é que o apelido pode ser pesquisado por parte do seu conteúdo. > ex: 11 ou GUA. > Qual seria uma boa maneira de armazenar os apelidos? > Um campo text com todos os apelidos concatenados? > Um campo text[]? > Uma outra tabela com relacionamento com a tabela de passagens de veiculos? > Um campo tsvector? > > Fiz uns testes e não conseguir reproduzir uma pesquisa do tipo like '%11' > ou like '%11%' utilizando tsvector nem text[]. No tsvector o maximo que > consegui foi '11:*' que represente like '11%' e no text[] não consegui > realizar pesquisa por parte da palavra. > Se ha alguma forma de fazer pesquisas do tipo like '%valor' poderiam me > explicar. > > obrigado pela ajuda > > abraços > > Edson Souza > >
Olá Edson, Observe que se você utilizar consultas utilizando o "coringa" (%) antes da expressão, a consulta não irá utilizar indices. por exemplo.: where apelido like 'AA1%' -- utiliza índice where apelido like '%AA1' -- não utiliza. Tendo isso em mente, e sabendo que o tsvector é mais usado para realizar busca de texto, salvo engano a mesma solução não seria muito adequada ao seu problema. Particularmente eu prefereria manter um modelo simples, com uma tabela com as placas lidas, e outra tabela contendo os apelidos (um por linha). cardinalidade 1 pra N. usando varchar mesmo. crie os índices para chaves, placas e apelidos e ficará tudo bem. -- Vinícius Abrahão Bazana Schmidt Desenvolvimento Dextra Sistemas www.dextra.com.br +55 19 3256-6722 Ramal 246 Este email é confidencial. Mais informações em: This message is confidential. More information at: www.dextra.com.br/confidencial.htm -- vi[nnix]™ aka: Vinícius Abrahão Bazana Schmidt vischmidt.wordpress.com twitter.com/vischmidt
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
