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

Puedo hacer 2 select en una sola consulta?

Estas en el tema de Puedo hacer 2 select en una sola consulta? en el foro de SQL Server en Foros del Web. Hola, se puede hacer 2 select en una sola consulta? estoy haciendo un sistema y necesito consultar 2 tablas con la condicion igual, es decir ...
  #1 (permalink)  
Antiguo 06/10/2010, 09:27
 
Fecha de Ingreso: noviembre-2007
Mensajes: 504
Antigüedad: 16 años, 5 meses
Puntos: 2
Puedo hacer 2 select en una sola consulta?

Hola, se puede hacer 2 select en una sola consulta? estoy haciendo un sistema y necesito consultar 2 tablas con la condicion igual, es decir el numero de seguro social de un empleado. la primera consulta es:
Select * from tbEmpleados where StrImss='20305570'
Select * from tbActividades Where StrImss='20305570'
alguna idea?
Saludos
  #2 (permalink)  
Antiguo 06/10/2010, 09:46
Avatar de gustavoh10  
Fecha de Ingreso: diciembre-2005
Ubicación: ARGENTINA
Mensajes: 196
Antigüedad: 18 años, 4 meses
Puntos: 3
Respuesta: Puedo hacer 2 select en una sola consulta?

Si, si podes.

Podes usar un join, si no entendí mal la pregunta.

Código SQL:
Ver original
  1. SELECT *
  2. FROM tbEmpleados e
  3. JOIN tbActividades a ON e.StrImss = a.StrImss
  4. WHERE e.StrImss = '20305570'
  #3 (permalink)  
Antiguo 06/10/2010, 10:05
 
Fecha de Ingreso: noviembre-2007
Mensajes: 504
Antigüedad: 16 años, 5 meses
Puntos: 2
Respuesta: Puedo hacer 2 select en una sola consulta?

eso me sirve, pero tambien quiero hacer un Getdate en la tabla de tbActividades a la fecha, osea quiero sacar la hora de entrada de ese empleado el cual consulto por el imms en la tabla actividades como por ejemplo:
Código SQL:
Ver original
  1. SELECT SUBSTRING (CONVERT(CHAR(38),dtHInicio,121), 12,8) AS Hora_Inicio,
  2. SUBSTRING (CONVERT(CHAR(38),dtHfin,121), 12,8) AS Hora_fin
  3. FROM tbActividades
pero lo quiero jalar en la misma consulta que me proporsionas obviamente poniendo como condicioen el numero de seguro social del empleado como en la query anterior ya que cada empleado tiene una hora de entrada y una hora de salida diferente.

saludos
  #4 (permalink)  
Antiguo 06/10/2010, 10:27
Avatar de gustavoh10  
Fecha de Ingreso: diciembre-2005
Ubicación: ARGENTINA
Mensajes: 196
Antigüedad: 18 años, 4 meses
Puntos: 3
Respuesta: Puedo hacer 2 select en una sola consulta?

Código SQL:
Ver original
  1. SELECT SUBSTRING (CONVERT(CHAR(38),a.dtHInicio,121), 12,8) AS Hora_Inicio,
  2. SUBSTRING (CONVERT(CHAR(38),a.dtHfin,121), 12,8) AS Hora_fin
  3. FROM tbEmpleados e
  4. JOIN tbActividades a ON e.StrImss = a.StrImss
  5. WHERE e.StrImss = '20305570'

Quedaría algo así. Si no es asi postea la estructura de las tablas.
  #5 (permalink)  
Antiguo 06/10/2010, 10:50
 
Fecha de Ingreso: noviembre-2007
Mensajes: 504
Antigüedad: 16 años, 5 meses
Puntos: 2
Respuesta: Puedo hacer 2 select en una sola consulta?

Asi queda excelente amigo,solo que la hora me la da con los segundos (00) y pos no los necesito, es el unico detallito, se puede quitar esto?
Muchisimas gracias pro tu ayuda, para sacar la hora solo con minutos quedamos que era asi
Código SQL:
Ver original
  1. SELECT CONVERT(nvarchar(5), GETDATE(), 108) AS Hora
que es el mismo formato como tengo en esas tablas fin e inicio, pero no le entiendo mucho al manejo de cadenas y no se como quitarle los segundos no es igualal ejemploq pongo :(
EDITADO:
Perdon pero ese ejemplo solo me da las horas, yo quiero que me de todo lo anterior como la q me pasaste anteriormente y las horas pero sin minutos
aki dejo una captura de pantalla los datos que selecciono son los que necesito que me los de pero namas hora y minuto y todos los demas campos tal cuale stan:
http://ompldr.org/vNXFvZA

Última edición por th3r0rn; 06/10/2010 a las 11:00
  #6 (permalink)  
Antiguo 06/10/2010, 11:30
Avatar de gustavoh10  
Fecha de Ingreso: diciembre-2005
Ubicación: ARGENTINA
Mensajes: 196
Antigüedad: 18 años, 4 meses
Puntos: 3
Respuesta: Puedo hacer 2 select en una sola consulta?

Proba con esto

Código SQL:
Ver original
  1. SELECT SUBSTRING (CONVERT(CHAR(16),a.dtHInicio,121), 12,8) AS Hora_Inicio,
  2. SUBSTRING (CONVERT(CHAR(16),a.dtHfin,121), 12,8) AS Hora_fin
  3. FROM tbEmpleados e
  4. JOIN tbActividades a ON e.StrImss = a.StrImss
  5. WHERE e.StrImss = '20305570'

o con

Código SQL:
Ver original
  1. SELECT SELECT CONVERT(nvarchar(5), a.dtHInicio, 108) AS Hora_Inicio,
  2. CONVERT(nvarchar(5), a.dtHFin, 121) AS Hora_Fin,
  3. FROM tbEmpleados e
  4. JOIN tbActividades a ON e.StrImss = a.StrImss
  5. WHERE e.StrImss = '20305570'

Aclaración si necesitas otros campos tenes que poner el alias (a o e) de la tabla y el nombre del campo


saludos
  #7 (permalink)  
Antiguo 06/10/2010, 11:54
 
Fecha de Ingreso: noviembre-2007
Mensajes: 504
Antigüedad: 16 años, 5 meses
Puntos: 2
Respuesta: Puedo hacer 2 select en una sola consulta?

Muchas gracisa, con el primero me quedo, solo una cosa mas, que funcioens me recomienda estudiar de sql server para obtener ese manejo de cadenas que me ayudo, como por ejemplo ese de la hora me interesa muchisimo aprenderlo bien.
Saludos
  #8 (permalink)  
Antiguo 06/10/2010, 12:13
Avatar de gustavoh10  
Fecha de Ingreso: diciembre-2005
Ubicación: ARGENTINA
Mensajes: 196
Antigüedad: 18 años, 4 meses
Puntos: 3
Respuesta: Puedo hacer 2 select en una sola consulta?

Cita:
Iniciado por th3r0rn Ver Mensaje
Muchas gracisa, con el primero me quedo, solo una cosa mas, que funcioens me recomienda estudiar de sql server para obtener ese manejo de cadenas que me ayudo, como por ejemplo ese de la hora me interesa muchisimo aprenderlo bien.
Saludos
No tengo muchas idea, pero mirando la funcion convert podes sacar muchas cosas buenas
http://www.w3schools.com/sql/func_convert.asp
http://msdn.microsoft.com/es-es/library/ms187928.aspx

saludos!

Etiquetas: select
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 03:18.