Em 14 de outubro de 2012 20:35, Matheus de Oliveira <
[email protected]> escreveu:

>
>
> 2012/10/14 Luiz Rafael Culik <[email protected]>
>
>>
>>
>> Em 14 de outubro de 2012 20:26, Matheus de Oliveira <
>> [email protected]> escreveu:
>>
>>
>>>
>>> On Sun, Oct 14, 2012 at 7:48 PM, Luiz Rafael <[email protected]>wrote:
>>>
>>>>   Boa Noite
>>>>
>>>>  Gostaria de ajuda pra um pequeno problema
>>>>
>>>>  tenho uma tabela com a seguinte estrutura
>>>>
>>>>  CREATE TABLE xxced2
>>>> (
>>>>   sr_recno bigserial NOT NULL,
>>>>   indkey_001 character varying(254),
>>>>   CONSTRAINT xxced2_sr_recno_key UNIQUE (sr_recno)
>>>> )
>>>> WITH (
>>>>   OIDS=FALSE
>>>> );
>>>>
>>>> CREATE INDEX xxced2_xxced11
>>>>   ON xxced2
>>>>   USING btree
>>>>   (indkey_001 COLLATE pg_catalog."default" NULLS FIRST);
>>>>
>>>> com os seguintes dados
>>>> sr_recno; indkey_001
>>>> 154;"201223.3.90.05.54            154"
>>>> 155;"201223.3.90.05.55            155"
>>>> 156;"201223.3.90.05.56            156"
>>>> 157;"201223.3.90.05.61            157"
>>>> 158;"201223.3.90.05.99            158"
>>>> 159;"201223.3.90.06.00            159"
>>>> 160;"201223.3.90.07.00            160"
>>>> 161;"201223.3.90.08.00            161"
>>>> 162;"201223.3.90.08.01            162"
>>>> 163;"201223.3.90.08.02            163"
>>>> 164;"201223.3.90.08.03            164"
>>>> 165;"201223.3.90.08.99            165"
>>>> 166;"201223.3.90.09.00            166"
>>>> 167;"201223.3.90.09.02            167"
>>>> 168;"201223.3.90.09.04            168"
>>>> 169;"201223.3.90.09.05            169"
>>>> 170;"201223.3.90.09.06            170"
>>>> 171;"201223.3.90.10.00            171"
>>>> 172;"201223.3.90.14.00            172"
>>>> 173;"201223.3.90.14.14            173"
>>>> 174;"201223.3.90.14.16            174"
>>>> 175;"201223.3.90.15.00            175"
>>>> 176;"201223.3.90.16.00            176"
>>>> 177;"201223.3.90.18.00            177"
>>>> 178;"201223.3.90.19.00            178"
>>>> 179;"201223.3.90.20.00            179"
>>>> 180;"201223.3.90.26.00            180"
>>>> 181;"201223.3.90.27.00            181"
>>>> 182;"201223.3.90.28.00            182"
>>>> 183;"201223.3.90.30.00            183"
>>>> 184;"201223.3.90.30.01            184"
>>>> 185;"201223.3.90.30.02            185"
>>>> 186;"201223.3.90.30.03            186"
>>>> 187;"201223.3.90.30.04            187"
>>>> 188;"201223.3.90.30.05            188"
>>>> 189;"201223.3.90.30.06            189"
>>>> 190;"201223.3.90.30.07            190"
>>>> 191;"201223.3.90.30.08            191"
>>>> 192;"201223.3.90.30.09            192"
>>>> 193;"201223.3.90.30.10            193"
>>>> 194;"201223.3.90.30.11            194"
>>>> 195;"201223.3.90.30.12            195"
>>>> 196;"201223.3.90.30.13            196"
>>>> 197;"201223.3.90.30.14            197"
>>>> 198;"201223.3.90.30.15            198"
>>>> 199;"201223.3.90.30.16            199"
>>>> 200;"201223.3.90.30.17            200"
>>>> 201;"201223.3.90.30.18            201"
>>>> 202;"201223.3.90.30.19            202"
>>>> 203;"201223.3.90.30.20            203"
>>>> 204;"201223.3.90.30.21            204"
>>>>
>>>> Agora vem o problema
>>>>
>>>> se eu usar a query
>>>>
>>>> SELECT  A."sr_recno", A."indkey_001" FROM "xxced1" A  WHERE (
>>>>     A."indkey_001" <= E'201223.3.90.30.00' )  ORDER BY
>>>>   A."indkey_001"   desc
>>>>
>>>> o registro com a informacao 201223.3.90.30.00 no campo indkey não e
>>>> retornado
>>>> alguma sugestao?
>>>>
>>>
>>> Pelos dados que você passou, não tem essa informação mesmo, apenas
>>> o "201223.3.90.30.00    183", que contém "<epaços>183" concatenado à 
>>> "201223.3.90.30.00",
>>> e, portanto é maior que "201223.3.90.30.00". Verifique melhor os dados,
>>> talvez concatenando algum caracter antes e depois para verificar se não há
>>> espaços ou caracteres não imprimívies.
>>>
>>>
>>> Atenciosamente,
>>> --
>>> Matheus de Oliveira
>>> Analista de Banco de Dados PostgreSQL
>>> Dextra Sistemas - MPS.Br nível F!
>>> www.dextra.com.br/postgres
>>>
>>>
>>>
>>>
>> Matheus
>>
>> Se eu  usar um select substr resolveria o meu problema?
>>
>>
> Depende, qual exatamente é o seu problema?
>
>
> --
> Matheus de Oliveira
> Analista de Banco de Dados PostgreSQL
> Dextra Sistemas - MPS.Br nível F!
> www.dextra.com.br/postgres
>


Matheus

Eu preciso trazer tudo que for <= ao dado independente da concatenação ou
seja se pedisse <= 201223.3.90.30.00
teria que trazer por exemplo

183;"201223.3.90.30.00"
182;"201223.3.90.28.00"
Atenciosamente
Luiz Rafael Culik Guimaraes
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a