Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-12-2010
calco_hugo calco_hugo is offline
Miembro
 
Registrado: jul 2010
Posts: 42
Poder: 0
calco_hugo Va por buen camino
select @variable from base

ante todo buen dia, tengo una duda y la verdad no se si es posible hacerla,
es posible hacer un select con una variable con el nombre del campo ?
ej

select @marca from @BaseDatos

la consulta es por que tengo varias bases, ej marca, modelo, tipo, etc
y quisiera hacer una sola rutina para todas las bases de datos y manejarme con variables, utilizo mysql 5
desde ya gracias
Responder Con Cita
  #2  
Antiguo 12-12-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Se llama concatenar.
Código SQL [-]
select '+marca+' from BaseDatos
Saludos
PD: Las arrobas no se por que las pones.
__________________
Siempre Novato
Responder Con Cita
  #3  
Antiguo 13-12-2010
calco_hugo calco_hugo is offline
Miembro
 
Registrado: jul 2010
Posts: 42
Poder: 0
calco_hugo Va por buen camino
gracias por contestar, por ahi me explique mal, lo que necesito es que el campo en el select sea una variable, igual que la base de datos

ej select campo_variable from base_variable

desde ya gracias
Responder Con Cita
  #4  
Antiguo 13-12-2010
Avatar de ElKurgan
[ElKurgan] ElKurgan is offline
Miembro Premium
 
Registrado: nov 2005
Posts: 1.234
Poder: 20
ElKurgan Va camino a la fama
Depende de la base de datos que estés utilizando. Por ejemplo, en Oracle es perfectamente válido hacer esto:

Select :variable from &basededatos

Un saludo
Responder Con Cita
  #5  
Antiguo 13-12-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Da lo mismo, si no se puede con los dos puntos como variable entonces se concatena:
Código Delphi [-]
var
Variable1: String;
begin
Variable1:= 'TuCampo';
Query1.Sql.Text:= 'select '+Variable1+' from BaseDatos';
Query1.Open;
end;
Saludos
__________________
Siempre Novato
Responder Con Cita
  #6  
Antiguo 28-01-2011
abelg abelg is offline
Miembro
 
Registrado: jul 2004
Posts: 50
Poder: 20
abelg Va por buen camino
Si es Sql Server la cosa creo sería asi

Declare @sql varchar(8000),
@tabla varchar(100),
@campos varchar(8000)
Set @tabla ='tabla_a'
Set @campos ='campo1, campo2, campo3, campo4'
set @sql ='Select '+ @campos +' From '+ @tabla
exec (@sql)
Responder Con Cita
  #7  
Antiguo 28-01-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Si te refieres "en la base de datos", pues entonces depende de la base de datos, en firebird tendría una estructura más o menos así:

Código SQL [-]
create procedure ejemplo( campo varchar(32), tabla varchar(32) )
as
declare variable sentecia varchar(256);
begin
  sentencia = 'select '||:campo||' from '||:tabla;
  execute statement sentecia;
end
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Declarar variable y select en la misma llamada a Query.Open Lord Delfos SQL 5 20-02-2008 01:05:19
Select con nombre de tabla Variable mayte mtz SQL 4 25-04-2006 16:13:35
Contenido de una select a una variable fjcg02 MS SQL Server 2 03-10-2005 21:23:13
Problema conuna consulta select...not in (select ...) VRO Firebird e Interbase 2 11-08-2005 08:56:35
5 select de 5 tablas diferentes en un select solo sakuragi SQL 6 15-06-2005 18:57:06


La franja horaria es GMT +2. Ahora son las 19:50:48.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi