habría alguna cláusula en sql que dijera algo parecido a esto
select * from tabla
where campo=todoslosregistros
(ya sé que si pongo la sentencia sin el where mesaldrían todos, pero necesito el where..)
Un saludo y muchismas gracias
Angelicorum
![borracho](http://static.forosdelweb.com/fdwtheme/images/smilies/borracho.png)
| |||
where campotal=todos Hola, habría alguna cláusula en sql que dijera algo parecido a esto select * from tabla where campo=todoslosregistros (ya sé que si pongo la sentencia sin el where mesaldrían todos, pero necesito el where..) Un saludo y muchismas gracias Angelicorum ![]() |
| |||
Respuesta: where campotal=todos Bien, el caso es el siguiente, tengo una función PHP que recibe, entre otras cosas, el resultado de la selección de un select que tiene (1.-todos, 2.-con el apellido pérez, 3.-con el apellido martínez etc..etc...) Cuando llega con el todos quiero hacer que la consulta sea la misma que si recibiera un pérez, o sea, select * from personas where apellido='pérez'; o select * from personas where apellido='me_da_igual_muestramelos_todos'; Bueno, espero haberme explicado correctamente. Un saludín y muchismas gracias, Angelicorum ![]() |
| |||
Respuesta: where campotal=todos Eso te lo resolverán fácilmente en el foro PHP. Pide ayuda allí. Te anticipo que tendrás que dividir la consulta (aunque no es completamente necesario) y que no será necesario usar el where, puesto que si el formulario ofrece el dato 1, tú haces la consulta a MySQL de un modo, y si es otro distinto, haces la consulta de otra manera. Pregunta en el foro PHP. Respecto al uso de WHERE, sí te diré que si pones WHERE 1 hace lo que pides. Observa que PHPMyAdmin genera la consulta con select por defecto así: SELECT * FROM `nombretabla` WHERE 1, y te muestra todos los registros. Podría serte útil, aunque para este caso creo que no es necesario, ya que eliges de un solo formulario. Si tomaras datos de varios, tal vez podrías usar ese WHERE 1 para solucionar los problemas generados por una sintaxis PHP en la que no se eligiera dato de ningún formulario. Última edición por jurena; 23/06/2008 a las 11:57 |
| |||
Respuesta: where campotal=todos Hola, no te entendí nada, jurena, pero muchas gracias por contestar de todos modos. Seguiré tu consejos de preguntar en PHP a ver si allí saben algo, aunque más bien es una pregunta pura de consulta sql. Supongo que si no hay respuesta es porque lo que yo quiero hacer no se puede. Saludorum ![]() |
| |||
Respuesta: where campotal=todos angelicorum, no te digo que no se pueda, porque no estoy del todo seguro; lo que te digo es que esto con programación lo resuelves sin ningún problema. Te pondré un ejemplo, aunque me arriesgo a que me llamen la atención los moderadores. 1) parte de la consulta mysql antes del where (al modo PHP, que es el que conozco): $query = "SELECT * FROM tutabla "; 2) si campoformulario <> 1, añado a la consulta where campo = 'valorrecogidoformulario' 3) añado el ORDER BY... 4) lanzo la consulta. 5) recojo los resultados ... Pero esto has de hacerlo con programación, pues la consulta no deja de ser una cadena string que se puede dividir y unir a placer en los distintos programas. Hay varias soluciones para hacerlo, además de esta. Podrás hacerlo fácilmente y en el foro PHP te dirán cómo hacerlo, pues en este foro no se nos permite poner código de programación. Entiendo que siempre se ha de elegir una de las opciones para lanzar la consulta, porque si pudiera darse el caso de pulsar sin elegir ninguna y no hubiera ninguna seleccionada en el selector por defecto, la cosa cambia y habría que usar el where 1 AND... |