Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Concatenar con SQL Server!!!!

Estas en el tema de Concatenar con SQL Server!!!! en el foro de SQL Server en Foros del Web. Hola a todos , tengo un problema con una consulta en SQLServer tengo dos campos de tipo ahora varchar eran enteros pero bueno, HORA y ...
  #1 (permalink)  
Antiguo 30/01/2008, 19:04
 
Fecha de Ingreso: febrero-2003
Ubicación: Distrito Federal
Mensajes: 26
Antigüedad: 21 años, 3 meses
Puntos: 0
Concatenar con SQL Server!!!!

Hola a todos , tengo un problema con una consulta en SQLServer tengo dos campos de tipo ahora varchar eran enteros pero bueno, HORA y MINUTOS tengo la siguiente consulta:
Código HTML:
$result_recados = mssql_query("SELECT HORA + MINUTOS As CAMPOS FROM $nom_tabla2 WHERE ((DIA=$var_dia) AND (MES=$var_mes) AND (ANO=$var_ano) AND ((CAMPOS>=$var_hora$var_minuto) AND (CAMPOS<=$var_hora2$var_minuto2))) ORDER BY HORA ASC");
Mi problema es que no hace la concatenacion o union y desconoce la variable CAMPOS a la que lo asigno, ayudar por favor . De antemano Gracias. Chao.
  #2 (permalink)  
Antiguo 30/01/2008, 23:21
Avatar de Beakdan  
Fecha de Ingreso: diciembre-2001
Ubicación: Monterrey, Nuevo León
Mensajes: 433
Antigüedad: 22 años, 5 meses
Puntos: 7
Re: Concatenar con SQL Server!!!!

Campos no es una variable. Es un alias que le asignas al resultado de concatenar los dos campos. No puedes comparar con ese nombre porque no existe al momento de ejecutar el filtro, existe sólo en el juego de resultados.
Tus opciones son...
1.- Usar una subconsulta para que puedas filtrar de esa manera:
Código:
SELECT      CAMPOS
FROM        (
                SELECT      HORA + MINUTOS AS CAMPOS
                FROM        $nom_tabla2 
                WHERE       DIA=$var_dia
                            AND MES=$var_mes
                            AND ANO=$var_ano
            ) AS hm
WHERE       CAMPOS >= $var_hora$var_minuto
            AND  CAMPOS <= $var_hora2$var_minuto2
ORDER BY    CAMPOS ASC 
2.- No usar el alias en el where :
Código:
SELECT      HORA + MINUTOS AS CAMPOS
FROM        $nom_tabla2
WHERE       DIA=$var_dia
            AND MES=$var_mes
            AND ANO=$var_ano
            AND (HORA + MINUTOS) >= $var_hora$var_minuto
            AND (HORA + MINUTOS) <= $var_hora2$var_minuto2
ORDER BY    CAMPOS ASC 
El order by es lo último que se evalúa en este caso, y en ese momento podemos usar el alias para ordenar.
  #3 (permalink)  
Antiguo 31/01/2008, 12:26
 
Fecha de Ingreso: febrero-2003
Ubicación: Distrito Federal
Mensajes: 26
Antigüedad: 21 años, 3 meses
Puntos: 0
Re: Concatenar con SQL Server!!!!

Hola Beakdan, muchas gracias por contestar, tu respuesta me ayudo a solucionar mi problema Hasta Pronto
  #4 (permalink)  
Antiguo 01/02/2008, 09:04
Avatar de BrujoNic
Super Moderador
 
Fecha de Ingreso: noviembre-2001
Ubicación: Costa Rica/Nicaragua
Mensajes: 16.935
Antigüedad: 22 años, 6 meses
Puntos: 655
Re: Concatenar con SQL Server!!!!

lestlienoe, que bien resolvieras tu problema, pero para la próxima, por favor no coloques código de programación o variables de programación en esta sección.

Uno no puede evaluar una sentencia SQL si ve variables y el error puede estar en el valor contenido.

Función de la sección de Base de Datos
__________________
La tecnología está para ayudarnos. No comprendo el porqué con esa ayuda, la gente escribe TAN MAL.
NO PERDAMOS NUESTRO LINDO IDIOMA ESPAÑOL
  #5 (permalink)  
Antiguo 01/02/2008, 09:38
 
Fecha de Ingreso: febrero-2003
Ubicación: Distrito Federal
Mensajes: 26
Antigüedad: 21 años, 3 meses
Puntos: 0
Re: Concatenar con SQL Server!!!!

Hola BrujoNic , muchas gracias por tu recomendacion asi lo hare la proxima vez.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




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