MySQL - Problema con el Operador IN

 
Vista:

Problema con el Operador IN

Publicado por the dreammer (1 intervención) el 13/02/2008 16:42:09
hola amigos:
tengo un pequeño problema.

he creado un store Procedure en Mysql, que es el siguiente:

CREATE DEFINER=`root`@`%` PROCEDURE `Sp_Total_Clientes`(Pais Varchar(250),Tipo Varchar(250),Area Varchar(250))
BEGIN
DECLARE variable1 varCHAR(250);
DECLARE variable2 varCHAR(250);
DECLARE variable3 varCHAR(250);

set variable1=Pais ;
set variable2=Tipo ;
set variable3=Area ;

SELECT COUNT(DISTINCT P.IdCliente) FROM Cliente AS P, area AS A,AREA_CLIENTE AC , pais AS PA,Empresa AS E,TipoEmpresa TP
Where P.IDAREA = A.IDAREA And A.IDAREA=AC.IDAREA AND
P.IDPAIS = PA.IDPAIS And P.IDEMPRESA = E.IDEMPRESA And
E.IdTipoEmpresa = TP.IdTipoEmpresa AND P.IDPAIS IN (variable1) AND
TP.IdTipoEmpresa IN (variable2) AND A.IDAREA IN (variable3)
ORDER BY P.IDCliente,PA.IDPAIS,TP.IdTipoEmpresa ;

END

MI problema es que desde el Visual 6.0 le envio los parametros de la siguiente manera:

LSPAIS="1,2,3"
LSTIPOEMPRESA="1,2,3,4,5,6,7,8,9"
LSAREA="2,4,6,8,10,29,30,35"

Rs1.Open "call Sp_Total_Clientes ('" & LSPAIS & "','" & LSTIPOEMPRESA & "','" & LSAREA & "') ", cnMySQL, adOpenDynamic, adLockBatchOptimistic

pero al hacer la consulta en el store no me devuelve los registros incorrectos(cantidad de registros) es porque el mysql toma solo el primer valor de la cadena y los demas los ovia, esa es mi conclusion, alguien me podria ayudar .. porfa lo mas pronto posible.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder