SQL Server - consulta del nombre de una columna saabiendo solamente el contenido de la misma

 
Vista:
sin imagen de perfil

consulta del nombre de una columna saabiendo solamente el contenido de la misma

Publicado por Roberto (1 intervención) el 08/12/2014 20:23:43
hola muy buenas tengo una base de datos sqlcompact con sus respectivas tablas y columnas creadas,

la cuestion es que tengo muchas columnas en una tabla y solamente tengo el contenido que una de esas columnas debe contener.
como debo hacer la consulta con el contenido y que me devuelva el nombre de la columna
¿¿¿es 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
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

consulta del nombre de una columna saabiendo solamente el contenido de la misma

Publicado por Isaias (4558 intervenciones) el 11/12/2014 22:18:30
Te contesto:

La estructura de SELECT, dice

SELECT col1, col2, col3
FROM tutabla
WHERE tufiltro

Por tanto, es imposible pasar un valor y que como resultado te regrese una columna, a menos claro, que desarrolles una función.

SELECT dbo.BuscaCadena('ciclon') FROM mytabla

Esta función, vaya a la tabla y en todas las columnas de tipo CHAR, busque el valor y te regrese el nombre de la columna.

¿Me explico?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

consulta del nombre de una columna saabiendo solamente el contenido de la misma

Publicado por Alan (5 intervenciones) el 11/02/2015 21:18:07
creo que como tal no se puede en sql pero depende el lenguaje de programacion donde utilices la consulta podria o no hacer lo que requieres.

por ejemplo en c# al pasar los datos de la consulta a un datatable ya van incluidos los nombres de las columnas, para retornar ese valor basta con hacer lo siguiente.

Columna1=tb.Tables["consulta"].Columns[1].ToString();

La variable Columna1 contendra el nombre de la columna con indice 1. los indices para columnas comienzan siempre de 0.

Saludos!.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar