Jump to content
Fórum Script Brasil
  • 0

Stored Procedure


Lixeira
 Share

Question

Bom dia, sou iniciante em forum e em banco de dados MySql e estou com o seguinte problema.

Criei uma procedure para retornar valores que possuam o nome contendo a letra 'A' e que seja '>=' a data inicial e '<=' a data final.

Utilizando uma tab de resultados no Query Browser o select a seguir retorna os valores corretamente.

SELECT DISTINCT cdcli, nmcli, m2ini, m2fin

FROM clientes

WHERE nmcli LIKE CONCAT('%', 'a' , '%') and

(m2ini >= 1) -- and m2fin <= M2FIN

ORDER BY nmcli;

porem, quando efetuo o CALL na procedure como descrito a seguir,

DROP PROCEDURE IF EXISTS `NomeLikePorMetragem` $$

CREATE DEFINER=`root`@`localhost` PROCEDURE `NomeLikePorMetragem`(In sNMCLI varchar(50),IN M2INI int, IN M2FIN int)

BEGIN

SELECT DISTINCT cdcli, nmcli, m2ini, m2fin

FROM clientes

WHERE nmcli LIKE CONCAT('%', sNMCLI , '%') and

(m2ini >= M2INI) -- and m2fin <= M2FIN

ORDER BY nmcli;

END $$

os campos 'm2ini' e 'm2fin' exibem os valores passados nas variáveis 'M2INI' e 'M2FIN', exemplo.

envio sNMCLI = 'A', M2INI = 1 e M2FIN = 350 e o resultado da consulta atribui o valor 1 em todos os registros da coluna M2INI e 350 para todos os registros da coluna M2FIN.

Desde já agradeço a ajuda.

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 0

Lixeira, testa desta maneira.

procedure `NomeLikePorMetragem`(in sNMCLI varchar(50)

,in M2INI int

,in M2FIN int)

begin

select distinct(cdcli) -- Coloquei somente este como distinto pois o mesmo imagino que seja diferente dos outros 'Codigo do Cliente'

,nmcli

,m2ini

,m2fin

from clientes

where nmcli like '%sNMCLI%' -- este ira retornar tudo que tiver dados do parametro

and m2ini between M2INI and M2FIN -- busca tudo entre as datas M2INI e M2FIN

order by nmcli;

end;

Se funcionar me informe depois. Vlw

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      150.9k
    • Total Posts
      648.7k
×
×
  • Create New...