Ir para conteúdo
Fórum Script Brasil

Liah

Membros
  • Total de itens

    11
  • Registro em

  • Última visita

Sobre Liah

Liah's Achievements

0

Reputação

  1. Era isso mesmo, haha Obrigada mesmo pela atenção e paciência Kakao Uma ótima tarde pra você... :D
  2. Será que pode ser alguma coisa com a versão do postgres? Não entendo porque aqui não funciona, apenas copiei e colei o que você postou aí em cima aqui e não funcionou, só retorna se eu escrever 'CABO DE FREIO' e se retirar o espaço entre as aspas simples do STRING_TO_ARRAY no final, somente 'CABO FREIO' não retorna nada =\
  3. Ah sim, desculpe, entendi mau, esses são os valores quando pesquisado somente com a palvra 'FREIO', quando pesquisado com a palavra 'CABO FREIO' não retornava nada, mas retirando o espaço entre as aspas simples no final assim: SELECT * FROM PCCDAPL0 WHERE UPPER(APLICA) LIKE ALL (STRING_TO_ARRAY( '%' || REGEXP_REPLACE(UPPER('CABO DE FREIO'), '\s+', '% %', 'g') || '%', '')) retorna a linha com as palavras digitadas, mas o caso é que a pessoa pode digitar sem o 'DE', ou seja, só 'CABO FREIO', e neste caso não retornará nada, e preciso que retorne todos os registros que contenham as palavras digitadas, independente se seguem a ordem das palavras do registro ou não, se for digitado 'CABO FREIO', preciso que retorne o registro 'CABO DE FREIO TRASEIRO', se for digitado 'FREIO CABO' também preciso que retorne o registro 'CABO DE FREIO TRASEIRO'... E sim, deve retornar os registros que contém todas as palavras pesquisadas...
  4. CABO DE FREIO TRASEIRO FLEXIVEL DE FREIO ALAVANCA DE ACIONAMENTO DO FREIO PELO PE MOLA INTERRUPTOR DE FREIO, PEDAL DE FREIO E ALAVANCA DE FREIO CARGO 200 ZH. KIT COM AS 3. Continua retornando somente com uma palavra aqui...
  5. Ah sim, hehe, percebi esse equivoco enquanto estive pesquisando a função, mas mesmo assim, ele só retorna o resultado quando digito uma palavra, se for mais de uma não retorna nenhum registro, tem algo a ver com isso ('\s+', '% %', 'g') ? Fiz o sequinte Select SELECT * FROM PCCDAPL0 WHERE UPPER(APLICA) LIKE ALL (STRING_TO_ARRAY('%' || REGEXP_REPLACE(UPPER('CABO FREIO'), '\s+', '% %', 'g') || '%', ' ')) E não retornou nada, mas se eu faço o seguinte select SELECT * FROM PCCDAPL0 WHERE UPPER(APLICA) LIKE ALL (STRING_TO_ARRAY('%' || REGEXP_REPLACE(UPPER('FREIO'), '\s+', '% %', 'g') || '%', ' ')) Retorna os 4 registros. Como faço para retornar os registros quando digitado mais que uma palavra?
  6. Kakao fiz o que você indicou, mas ocorreu o seguinte erro: ERROR: function nregexp_replace(text, "unknown", "unknown", "unknown") does not exist HINT: No function matches the given name and argument types. You may need to add explicit type casts. Estou pesquisando sobre essa função nregexp_replace, mas não encontrei nada que possa me ajudar ainda :(
  7. Preciso que busque por todas as palavras digitadas, ou seja, retorne somente os registros que contenham todas as palavras digitadas, se for uma palavra só, busca todos os registros que contenham aquela palavra, se forem 3 palavras, busca os registros que contenham todas as 3 palavras... A versão do meu postgresql é a 1.4
  8. Boa tarde Bom, gostaria de saber se alguém sabe alguma forma de retornar um dado independente da ordem que eu digite o nome. Exemplo: Ao procurar pela descrição 'CABO ACELERADOR GOL' não irá encontrar um produto que tenha no conteúdo a descrição 'CABO ACELERADOR PARA GOL 1.0 E 1.6', preciso de alguma função que retorne esse produto independente da forma como eu procure, seja 'CABO ACELERADOR GOL' ou 'ACELERADOR CABO GOL' mas retorne o produto 'CABO ACELERADOR PARA GOL 1.0 E 1.6', ou seja, uma função que procure somente pelas palavras e não pelas palavras e a ordem das mesmas. Desculpe se não fui clara o suficiente, é meio difícil de explicar, mas é isso, se alguém puder me ajudar ficarei grata. Obrigada. ^_^
  9. Liah

    Eliminar {} de um Array

    Cara, deu certo, muito obrigada mesmo... :D
  10. Liah

    Eliminar {} de um Array

    SELECT PCFNREC0.DTEMIS AS DataEmissao, PCMTEMP0.Razao AS RazaoEmpresa, PCMTEMP0.CCE AS InscricaoEstadualEmpresa, PCMTEMP0.CGC AS CNPJEmpresa, PCMTEMP0.ENDERE AS EnderecoEmpresa, PCMTEMP0.Bairro AS BairroEmpresa, PCMTEMP0.MUNICI AS MunicipioEmpresa, PCMTEMP0.CEP AS CEPEmpresa, MascaraTelefone(PCMTEMP0.FONE) AS TelefoneEmpresa, ClienteCadastroEmpresa.EMAIL AS EmailEmpresa, PCFNREC0.NRODPL || '-' || PCFNREC0.LETDPL AS NumeroDuplicata, PCFNREC0.SALDOV AS Valor , PCFNREC0.DTVCTO AS DataVencimento , (SELECT ARRAY (SELECT PCFNRER0.NRONFF || '-' || PCFNRER0.SERIE FROM PCFNRER0) WHERE PCFNREC0.EMPFIL = PCFNRER0.EMPFIL AND PCFNREC0.CLIFOR = PCFNRER0.CLIFOR AND PCFNREC0.DUPMOV = 'D' AND PCFNREC0.NRODPL = PCFNRER0.NROAGR) AS NumeroNotaFiscal , ClienteDuplicata.DESCRI AS DescricaoCliente, ClienteDuplicata.ENDERE AS EnderecoCliente, ClienteDuplicata.Bairro AS BairroCliente, ClienteDuplicata.Cidade AS MunicipioCliente, ClienteDuplicata.Praca AS PracaPagamento, MascaraCNPJCPF(ClienteDuplicata.CGC1, ClienteDuplicata.CGC2, ClienteDuplicata.CGC3) AS CPFCNPJCliente, ClienteDuplicata.CEP AS CEPCliente, CASE WHEN TRIM(ClienteDuplicata.INSCRI) NOT IN ('', 'ISENTO') THEN TRIM(ClienteDuplicata.INSCRI) WHEN TRIM(ClienteDuplicata.RG) <> '' THEN TRIM(ClienteDuplicata.RG) ELSE 'ISENTO' END AS InscricaoEstadualRGCliente, CURRENT_DATE AS DataGeracaoImpressaoDuplicata, PCMTEMP0.Estado AS EstadoEmpresa, ClienteDuplicata.Estado AS EstadoCliente, TRIM(ConfiguracoesImpressaoDuplicatas.AceiteDuplicata) AS AceiteDuplicata, CASE WHEN PCFNREC0.SALDOV > 0 THEN ValorExtenso(PCFNREC0.SALDOV) ELSE '' END AS ValorExtenso, (SELECT SUM(DuplicatasReceber.Valor) FROM PCFNREC0 AS DuplicatasReceber WHERE DuplicatasReceber.EMPFIL = PCFNREC0.EMPFIL AND DuplicatasReceber.PLANIL = PCFNREC0.PLANIL AND DuplicatasReceber.DUPMOV = 'D') AS ValorFatura, MascaraTelefone(ClienteDuplicata.Fone01) AS TelefoneCliente FROM PCFNREC0 JOIN PCMTEMP0 ON (PCMTEMP0.Codigo = PCFNREC0.EMPFIL) JOIN PCCDCLI0 AS ClienteCadastroEmpresa ON (ClienteCadastroEmpresa.Codigo = PCMTEMP0.CLIFORT AND ClienteCadastroEmpresa.LOCCLI = '00') JOIN PCFNRER0 ON (PCFNRER0.NRONFF = PCFNREC0.NRONFF AND PCFNRER0.NRODPL = PCFNREC0.NRODPL) JOIN PCCDCLI0 AS ClienteDuplicata ON (ClienteDuplicata.Codigo = PCFNREC0.CLIFOR AND ClienteDuplicata.LOCCLI = '00') LEFT JOIN ConfiguracoesImpressaoDuplicatas ON (PCFNREC0.EMPFIL = ConfiguracoesImpressaoDuplicatas.Empresa) WHERE PCFNREC0.NRONFF = '000003032' ORDER BY PCFNREC0.NRONFF Essa aí..
  11. Bom dia! Bom, tenho o seguinte subselect: (SELECT ARRAY(SELECT PCFNRER0.NRONFF || '-' || PCFNRER0.SERIE FROM PCFNRER0) WHERE PCFNREC0.EMPFIL = PCFNRER0.EMPFIL AND PCFNREC0.CLIFOR = PCFNRER0.CLIFOR AND PCFNREC0.DUPMOV = 'D' AND PCFNREC0.NRODPL = PCFNRER0.NROAGR) AS NumeroNotaFiscal, Desta maneira, o resultado da consulta fica entre chaves Ex { 000008871-ECF, 000008872-ECF, 000008873-ECF } Gostaria de saber se alguém sabe alguma maneira de eliminar essas chaves e o resultado ficar somente 000008871-ECF, 000008872-ECF, 000008873-ECF Só para constar, já tentei usar o REPLACE, mas ocorre um erro onde diz que o REPLACE não pode ser utilizado com TEXT[]. Obrigada a quem ajudar!
×
×
  • Criar Novo...