SQL Server - Creacion de una vista especial

 
Vista:
sin imagen de perfil

Creacion de una vista especial

Publicado por Dave (1 intervención) el 27/01/2012 09:31:25
Hola!

No tengo mucha experiencia en crear vistas en SQL Server y necesito hacer una un poco especial, os comento:

Tengo la tabla A con la siguiente estructura:

Tiempo-----Marca-----Modelo------AñoFabricación------TIPO------NumeroDocumento
200807-------AC-------------A1---------------2007----------------B-----------------12345
200706-------BC-------------B4---------------2005---------------B------------------12378

y la tabla B con la siguiente estructura:

Tiempo-----Marca-----Modelo------AñoFabricación------TIPO
200807-------C-------------A23---------------2007----------------B
200807-------C-------------A11---------------2007----------------B
200807-------Z-------------A12---------------2007----------------B

Ahora viene la creación de la vista:
Mi vista tiene que tener las columnas de la tabla A y a continuacion tener los registros de la tabla B pero SOLO los que tengan la Marca='C' y como veis llenar el NumeroDocumento con NULL en los registros de la tabla B...

La vista tendría que ser de esta manera:

Tiempo-----Marca-----Modelo------AñoFabricación------TIPO------NumeroDocumento
200807-------AC-------------A1---------------2007----------------B-----------------12345
200706-------BC-------------B4---------------2005---------------B------------------12378
200807-------C-------------A23---------------2007----------------B---------------------NULL
200807-------C-------------A12---------------2007----------------B---------------------NULL


Como puedo hacer esta vista??

Muchas gracias!!
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

Creacion de una vista especial

Publicado por Isaias (4557 intervenciones) el 27/01/2012 16:15:50
¿Que columnas o campos hacen la referencia entre ambas tablas? (PRIMARY KEY y FOREING KEY)
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

Creacion de una vista especial

Publicado por Pedro (80 intervenciones) el 27/01/2012 18:11:48
Hacelo con un Union All , es lo que necesitas.
y el segundo select condicionado por Marca='C'
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
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

Creacion de una vista especial

Publicado por Isaias (4557 intervenciones) el 27/01/2012 19:34:28
Pedro

Habria que resolver que la primera tabla, tiene CONCATENADAS en la MARCA, mas de una, ¿cierto?

Se me ocurre un LIKE, no lo se.......
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

Creacion de una vista especial

Publicado por Pedro (80 intervenciones) el 27/01/2012 21:18:08
No se Isaias , Dave no habla de que necesite filtrar los registros de la tabla A

La vista segun lo que plantea Dave deberia ser asi con un union , lo unico que no queda claro, es si los registros de la tabla A van o no, yo creeria que si,

Lo que entiendo es que necesita la Tabla A y los regisros de la Tabla B que tienen Marca C

Esto entiendo por lo que pone y quedaria asi

select Tiempo,Marca,Modelo,AñoFabricacion,Tipo,NumeroDocumento from A
UNION ALL
select Tiempo,Marca,Modelo,AñoFabricacion,Tipo,Null NumeroDocumento from B
where Marca = 'C'

Buenno Dave, si no entiendo bien, podrias aclarar la premisa,
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