Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Mysql (http://www.forosdelweb.com/f86/)
-   -   consulta multiple (http://www.forosdelweb.com/f86/consulta-multiple-584214/)

darkleo 08/05/2008 07:55

consulta multiple
 
buenos dias, resulta q realizo la siguiente consulta
$queEmp = 'SELECT * FROM `emtelsa` WHERE `description` LIKE \'%3301605%\'';

es posible realizar una consulta multiple es decir asi
$queEmp = 'SELECT * FROM `emtelsa` WHERE `description` LIKE \'%3301605,3302050,3307859%\'';
como la puedo realizar muchas gracias

Nano_ 08/05/2008 08:48

Re: consulta multiple
 
Saludos..

No se si esta forma es lo que buscas:

Cita:

$queEmp = "SELECT * FROM emtelsa WHERE description LIKE '%3301605%' OR description LIKE '%3302050%' OR description LIKE '%3307859%' '';
mmm....

Hasta Pronto

jurena 08/05/2008 08:49

Re: consulta multiple
 
Cita:

Iniciado por darkleo (Mensaje 2395324)
buenos dias, resulta q realizo la siguiente consulta
$queEmp = 'SELECT * FROM `emtelsa` WHERE `description` LIKE \'%3301605%\'';

es posible realizar una consulta multiple es decir asi
$queEmp = 'SELECT * FROM `emtelsa` WHERE `description` LIKE \'%3301605,3302050,3307859%\'';
como la puedo realizar muchas gracias


Si lo que queiers es que busque caracteres por delante y detrás de la cadena, puedes hacer la consulta así:

SELECT * FROM emtelsa WHERE description LIKE '%3301605%' OR description LIKE '%3302050%' OR description LIKE '%3307859%'

si son textos exactos, podrías hacerlo así:
SELECT * FROM emtelsa WHERE description IN ('3301605', '3302050', '3307859')

darkleo 08/05/2008 12:45

Re: consulta multiple
 
muchas gracias, ensaye de la primera forma y obtuve este error
Código PHP:

$queEmp 'SELECT * FROM `emtelsa` WHERE `description` LIKE '%3301605%' OR `description` LIKE '%3302050%' OR `description` LIKE '%3307859%''

Código HTML:

Warning: Division by zero
con la otra forma

Código PHP:

$queEmp 'SELECT * FROM `emtelsa` WHERE `description` IN ('3301605', '3302050', '3307859')'

Código HTML:

Parse error: syntax error, unexpected T_LNUMBER
cualquier observacion muchas gracias

darkleo 08/05/2008 12:48

Re: consulta multiple
 
mmm, otra cosita los textos si son exactos !!!!

quimfv 08/05/2008 13:04

Re: consulta multiple
 
Código:


$queEmp = "SELECT * FROM `emtelsa` WHERE `description` IN ('3301605', '3302050', '3307859')";

Código:


$queEmp = 'SELECT * FROM `emtelsa` WHERE `description` IN (\'3301605\', \'3302050\', \'3307859\')';


Creo... no seguro!!!

esto tambien

Código:


$queEmp = "SELECT * FROM `emtelsa` WHERE `description` LIKE '%3301605%' OR `description` LIKE '%3302050%' OR `description` LIKE '%3307859%'";

o la otra solución....



Quim

darkleo 08/05/2008 13:44

Re: consulta multiple
 
muchisiisimas gracias quim, intente las primeras sentencias y no me funciono, me sale check the manual that corresponds to your MySQL server version for the right syntax to use near '\'3301605\', \'3302050\', \'3307859\')'

la ultima si al pelo !!!!!:aplauso: muchas gracias a todos.

quimfv 09/05/2008 01:02

Re: consulta multiple
 
Siendo textos exactos lo suyo es usar la primera o la segunda que de hecho son la misma y funcionan seguro...

La primera debe funcionar tanto pasandola desde php como directamente, la segunda solo des de php, las barras "\" son para anular el efecto especial de " ' " y claro solo hay que ponerlas el montar la sentencia en php, al servidor de bbdd le llega lo mismo que la primera.

Por cierto description es "varchar" porque si es numerico luego los " ' " sobran....


$queEmp = "SELECT * FROM `emtelsa` WHERE `description` IN (3301605, 3302050, 3307859)";



Quim

darkleo 09/05/2008 06:22

Re: consulta multiple
 
muchas gracias Quim, ensaye de nuevo
Código PHP:

#$queEmp = "SELECT * FROM emtelsa WHERE description IN (3301605,3307859)";
$queEmp 'SELECT * FROM emtelsa WHERE description IN (\'3301605\', \'3302050\', \'3307859\')'

pero como resultado obtuve una consulta vacia es decir no me genero ningun error, solo ningun registro, y el campo description si es tipo varchar.

jurena 09/05/2008 07:51

Re: consulta multiple
 
Darkleo,

en mi anterior post sólo te puse la sintaxis de MySQL, pues a nuestros moderadores les gusta muy poco que incluyamos código de programación en este foro de MySQL. No obstante, creo que para PHP debes hacerlo así, que es como te dijo Quim al principio:
$querEmp="SELECT * FROM emtelsa WHERE description IN ('3301605', '3302050', '3307859')";
$res=mysql_query($querEmp);
$array=mysql_fetch_array($res);
do {echo $array['description'].'<br>';} while ($array=mysql_fetch_array($res))

Esto lo he probado y funciona en PHP.

darkleo 09/05/2008 09:35

Re: consulta multiple
 
:aplauso: ok jurena muchas gracias me sirvio de mucho, a quim y a todos muchas gracias por su colaboracion !!!!!!!!!!!!


La zona horaria es GMT -6. Ahora son las 09:09.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.