problemas con los where

18/11/2005 - 09:17 por Ivan Cosano Sanchez | Informe spam
Hola mi pregunta es si se puede utilizar el where de una consulta poniendo
un indice o algo
que reemplace el nombre de la columna es si.
Es decir:
Lo normal seria: select nombre from alumnos where nombre='Ivan'
Pero yo quiero : select nombre from alumnos where ( "1" por ej)='Ivan'
Es que estoy desarrollando una aplicion y me seria muy util
Gracias!!!

Preguntas similare

Leer las respuestas

#1 Carlos Sacristán
18/11/2005 - 09:27 | Informe spam
Pues no, eso no es posible, pero tengo una curiosidad: ¿por qué te sería
útil?


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Ivan Cosano Sanchez" escribió en el mensaje
news:#
Hola mi pregunta es si se puede utilizar el where de una consulta poniendo
un indice o algo
que reemplace el nombre de la columna es si.
Es decir:
Lo normal seria: select nombre from alumnos where nombre='Ivan'
Pero yo quiero : select nombre from alumnos where ( "1" por ej)='Ivan'
Es que estoy desarrollando una aplicion y me seria muy util
Gracias!!!



Respuesta Responder a este mensaje
#2 Ivan Cosano Sanchez
18/11/2005 - 09:40 | Informe spam
A ver ,yo se que si yo le pongo en la consulta order by 1 me ordena los
resultados por la primera columna y si pongo 2 por la segunda...
La aplicacion se basa en una base de datos que muestra datos mediante un
listview, con columnas.
Hay un formulario que me sirve como de lista de seleccion y quiero que
seleccionando una columna la busqueda se me realice por el indice de esa
columna.
Se que se podria hacer asignandole el nombre en la propiedad tag u de otras
formas.Pero el formulario no es nuevo sino que le estoy ampliando
funciones.Ya que a este solo le mando una SQL , es decir , que no creo
primero la columnas y luego las demas cosas. Todo el trabajo lo hace una
funcion


"Carlos Sacristán" <csacristanARROBAmvpsPUNTOorg> escribió en el mensaje
news:
Pues no, eso no es posible, pero tengo una curiosidad: ¿por qué te


sería
útil?


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Ivan Cosano Sanchez" escribió en el mensaje
news:#
> Hola mi pregunta es si se puede utilizar el where de una consulta


poniendo
> un indice o algo
> que reemplace el nombre de la columna es si.
> Es decir:
> Lo normal seria: select nombre from alumnos where nombre='Ivan'
> Pero yo quiero : select nombre from alumnos where ( "1" por ej)='Ivan'
> Es que estoy desarrollando una aplicion y me seria muy util
> Gracias!!!
>
>
>



Respuesta Responder a este mensaje
#3 Carlos Sacristán
18/11/2005 - 11:44 | Informe spam
Ya te entiendo. El problema es que el intentar hacer algo tan genérico
normalmente perjudica el rendimiento de la aplicación. Si son pocos datos
sobre los que vas a consultar, no hay problema, pero si es una tabla con un
tamaño considerable este tipo de consultas suelen ser costosas.

Existe un artículo muy bueno de Erland Sommarskog (un MVP) acerca de
estos temas que te pueden ayudar a la hora de cómo implementarlo. Está en
inglés pero se entiende bastante bien aunque no tuvieras un nivel muy alto:
http://www.sommarskog.se/dyn-search.html


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Ivan Cosano Sanchez" escribió en el mensaje
news:uwL0$
A ver ,yo se que si yo le pongo en la consulta order by 1 me ordena los
resultados por la primera columna y si pongo 2 por la segunda...
La aplicacion se basa en una base de datos que muestra datos mediante un
listview, con columnas.
Hay un formulario que me sirve como de lista de seleccion y quiero que
seleccionando una columna la busqueda se me realice por el indice de esa
columna.
Se que se podria hacer asignandole el nombre en la propiedad tag u de


otras
formas.Pero el formulario no es nuevo sino que le estoy ampliando
funciones.Ya que a este solo le mando una SQL , es decir , que no creo
primero la columnas y luego las demas cosas. Todo el trabajo lo hace una
funcion


"Carlos Sacristán" <csacristanARROBAmvpsPUNTOorg> escribió en el mensaje
news:
> Pues no, eso no es posible, pero tengo una curiosidad: ¿por qué te
sería
> útil?
>
>
> Un saludo
>
> -
> "Sólo sé que no sé nada. " (Sócrates)
>
> "Ivan Cosano Sanchez" escribió en el mensaje
> news:#
> > Hola mi pregunta es si se puede utilizar el where de una consulta
poniendo
> > un indice o algo
> > que reemplace el nombre de la columna es si.
> > Es decir:
> > Lo normal seria: select nombre from alumnos where nombre='Ivan'
> > Pero yo quiero : select nombre from alumnos where ( "1" por ej)='Ivan'
> > Es que estoy desarrollando una aplicion y me seria muy util
> > Gracias!!!
> >
> >
> >
>
>
>



Respuesta Responder a este mensaje
#4 Victor Koch
18/11/2005 - 14:24 | Informe spam
Hola Ivan,

Creo que deberías pensar en usar el nombre del campo en los WHERE en vez de
la ubicación, no tenes forma de guardar en el listview el nombre del campo o
en todo caso podrías guardarte en un vector el nombre de los campos y sacar
de ese vector el nombre en base al índice del listview.

Usar el numero de campo es muy peligroso, el día que modifiquen el diseño de
la tabla para agregar un campo y este lo intercalen todos los números de
campos se desplazaran una posición a la derecha, en otras palabras cuando
antes el campo 2 era la Razón Social ahora paso a ser el campo 3.

Un saludo, Víctor Koch.


"Ivan Cosano Sanchez" escribió en el mensaje
news:uwL0$
A ver ,yo se que si yo le pongo en la consulta order by 1 me ordena los
resultados por la primera columna y si pongo 2 por la segunda...
La aplicacion se basa en una base de datos que muestra datos mediante un
listview, con columnas.
Hay un formulario que me sirve como de lista de seleccion y quiero que
seleccionando una columna la busqueda se me realice por el indice de esa
columna.
Se que se podria hacer asignandole el nombre en la propiedad tag u de


otras
formas.Pero el formulario no es nuevo sino que le estoy ampliando
funciones.Ya que a este solo le mando una SQL , es decir , que no creo
primero la columnas y luego las demas cosas. Todo el trabajo lo hace una
funcion


"Carlos Sacristán" <csacristanARROBAmvpsPUNTOorg> escribió en el mensaje
news:
> Pues no, eso no es posible, pero tengo una curiosidad: ¿por qué te
sería
> útil?
>
>
> Un saludo
>
> -
> "Sólo sé que no sé nada. " (Sócrates)
>
> "Ivan Cosano Sanchez" escribió en el mensaje
> news:#
> > Hola mi pregunta es si se puede utilizar el where de una consulta
poniendo
> > un indice o algo
> > que reemplace el nombre de la columna es si.
> > Es decir:
> > Lo normal seria: select nombre from alumnos where nombre='Ivan'
> > Pero yo quiero : select nombre from alumnos where ( "1" por ej)='Ivan'
> > Es que estoy desarrollando una aplicion y me seria muy util
> > Gracias!!!
> >
> >
> >
>
>
>



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida