SQL Server - Consulta SQL (registro padre e hijo en el mismo resultado)

 
Vista:
Imágen de perfil de Leonardo Daniel A.
Val: 98
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Consulta SQL (registro padre e hijo en el mismo resultado)

Publicado por Leonardo Daniel A. (48 intervenciones) el 11/05/2018 19:37:28
Hola a todos, requiero su ayuda, ya que necesito realizar una consulta a unos datos de un Sistema que desarrolle para una Linea de Trailers...

El asunto.... el registro de viajes se hace sobre un registro y ese registro tiene su ID_VIAJE, IDA_VUELTA ("I", "V"), ID_VIAJE_VUELTA ( esto se hace porque cuando se despacha el viaje de vuelta se hace seleccionando el viaje de ida, esto para hacer el viaje redondo )

Por lo que al registrar el viaje de IDA quedaria mas o menos asi

11-05-2018%2012-33-33%20p-%20m-

Ahi se observa como quedan relacionados... ahora lo que necesito es en una sola consulta tener los datos del viaje redondo, consultando sobre el viaje de IDA osea el #1, ya lo intente de varias formas, pero no lo logro, me repite los datos del viaje de ida en las columnas del
viaje de vuelta

2



Este es mi Query Actual

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
SELECT
	concat(cd_vi_ini.ciudad,', ', cd_vi_ini.estado) AS cd_vi_ini,
	concat(cd_vi_dest.ciudad,', ', cd_vi_dest.estado) AS cd_vi_dest,
	tipocarga_ida.nombre as tipo_carga_ida,
	viaje_ida.fecha_salida as fecha_salida_ida,
	viaje_ida.fecha_regreso as fecha_regreso_ida,
	concat(cd_vv_ini.ciudad,', ', cd_vv_ini.estado) AS cd_vv_ini,
	concat(cd_vv_dest.ciudad,', ', cd_vv_dest.estado) AS cd_vv_dest,
	tipocarga_vuelta.nombre as tipo_carga_vuelta,
	viaje_vuelta.fecha_salida as fecha_salida_vuelta,
	viaje_vuelta.fecha_regreso as fecha_regreso_vuelta,
	viaje_vuelta.id_viaje AS id_viaje_vuelta,
	viaje_ida.millas
FROM viajes AS viaje_ida
LEFT OUTER JOIN viajes AS viaje_vuelta ON viaje_ida.id_viaje = viaje_vuelta.id_viaje
INNER JOIN dbo.ciudades AS cd_vi_ini ON viaje_ida.id_cd_origen = cd_vi_ini.id_cd
INNER JOIN dbo.ciudades AS cd_vi_dest ON viaje_ida.id_cd_destino = cd_vi_dest.id_cd
INNER JOIN dbo.tipos_carga as tipocarga_ida ON viaje_ida.id_tpo_carga = tipocarga_ida.id_tpo_carga
LEFT OUTER JOIN dbo.ciudades AS cd_vv_ini ON viaje_ida.id_cd_origen = cd_vv_ini.id_cd
LEFT OUTER JOIN dbo.ciudades AS cd_vv_dest ON viaje_ida.id_cd_destino = cd_vv_dest.id_cd
INNER JOIN dbo.tipos_carga as tipocarga_vuelta ON viaje_vuelta.id_tpo_carga = tipocarga_vuelta.id_tpo_carga
	WHERE viaje_ida.id_viaje  = 1
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 Leonardo Daniel A.
Val: 98
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Consulta SQL (registro padre e hijo en el mismo resultado)

Publicado por Leonardo Daniel A. (48 intervenciones) el 12/05/2018 04:03:03
ya lo resolvi.. tenia un error en 2 los joins.
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