SQL Server - Unión de Consultas a una sola Tabla

 
Vista:
sin imagen de perfil

Unión de Consultas a una sola Tabla

Publicado por Eddy (6 intervenciones) el 18/06/2016 20:07:06
Buen día a todos, espero aportar algo diferente. El motivo de mi mensaje es para que me apoyen en lo siguiente:

Tengo dos consultas las cuales manejan la misma cantidad de columnas y nombres de estas, pero con
diferente información.

Imagen adjunta(Consulta 1)
Consulta 1:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
DECLARE @cD Datetime, @mFI varchar(50), @MCN varchar(100), @cC varchar(10), @s varchar(50), @uom varchar(5), @dPN varchar(5), @sP varchar(5), @bC varchar;
SET @cD=GetDate()
SET @mFI='BFLlantasYServSA'
SET @MCN='1370'
SET @cC='MX'
SET @s='productSold'
SET @uom='EA'
SET @dPN='0'
SET @sP='0'
SET @bC=' '
SELECT F.FECHA_DOC AS curDate , @cD AS curTime, @mFI As messageFromId, @MCN As MichelinCustomerNbr, @cC As countryCode, @s As seccion, P.CVE_ART As mspn, CASE
WHEN F.NUM_ALMA = 1 THEN '4'
WHEN F.NUM_ALMA = 2 THEN '3'
WHEN F.NUM_ALMA = 3 THEN '5'
WHEN F.NUM_ALMA = 4 THEN '6'
ELSE '7'
END  dealerStoreNbr , C.CAMPLIB10 As dealerCustNbr,@uom as uom, P.CANT As qty, F.FECHA_DOC AS sellOutDate, @dPN As dealerPartNbr, @dPN As salesPrice, C.CAMPLIB9 As michAAN, @bC As brandCd
FROM PAR_FACTF09 P INNER JOIN INVE09 I
 ON I.CVE_ART = P.CVE_ART INNER JOIN INVE_CLIB09 L
  ON L.CVE_PROD = I.CVE_ART INNER JOIN FACTF09 F
   ON F.CVE_DOC = P.CVE_DOC INNER JOIN CLIE_CLIB09 C
    ON C.CVE_CLIE = F.CVE_CLPV
WHERE F.FECHA_DOC>= DATEADD(dd, 0, DATEDIFF(dd, 0, GETDATE())) AND F.STATUS <> 'C' AND L.CAMPLIB7 <> '' AND I.STATUS  <> 'B'

Imagen adjunta(Consulta 2)
Consulta 2:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
DECLARE @cD Datetime, @mFI varchar(50), @MCN varchar(100), @cC varchar(10), @s varchar(50), @uom varchar(5), @dPN varchar(5), @sP varchar(5), @bC varchar, @dCN varchar, @qty int, @sOD varchar, @mA varchar;
SET @cD=GetDate()
SET @mFI='BFLlantasYServSA'
SET @MCN='1370'
SET @cC='MX'
SET @s='curInventory'
SET @uom='EA'
SET @dPN=''
SET @sP=''
SET @bC=''
SET @dCN=''
SET @sOD=''
SET @mA=''
SELECT @cD AS curDate , @cD AS curTime, @mFI As messageFromId, @MCN As MichelinCustomerNbr, @cC As countryCode, @s As seccion, B.CVE_ART As mspn,
CASE
WHEN A.CVE_ALM = 1 THEN '4'
WHEN A.CVE_ALM = 2 THEN '3'
WHEN A.CVE_ALM = 3 THEN '5'
WHEN A.CVE_ALM = 4 THEN '6'
ELSE '7'
END  dealerStoreNbr, @dCN As dealerCustNbr,@uom as uom, A.EXIST As qty, @sOD AS sellOutDate, @dPN As dealerPartNbr, @dPN As salesPrice, @mA As michAAN, @bC As brandCd
FROM MULT09 A INNER JOIN INVE09 B ON A.CVE_ART=B.CVE_ART INNER JOIN INVE_CLIB09 C ON A.CVE_ART=C.CVE_PROD
WHERE C.CAMPLIB7<>'NULL' AND A.EXIST>0 AND B.CVE_ART<>'25817'
ORDER BY B.CVE_ART ASC

Si las ejecuto de forma independiente jalan bien sin ninguno error, pero quiero que queden de esta forma(imagen adjunta UNION).

GRACIAS POR SU APOYO

Consulta-1
Consulta-2
Union
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

Unión de Consultas a una sola Tabla

Publicado por Isaias (4558 intervenciones) el 20/06/2016 18:44:53
Consulta 1
UNION
Consulta 2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Unión de Consultas a una sola Tabla

Publicado por Eddy (6 intervenciones) el 20/06/2016 20:30:57
Hola Isaias ya utilice ese metodo y ma sale esto:

Msg 156, Level 15, State 1, Line 27
Sintaxis incorrecta cerca de la palabra clave 'DECLARE'.
Msg 134, Level 15, State 1, Line 27
El nombre de variable '@cD' ya se ha declarado. Los nombres de variable deben ser únicos en cada lote de consultas o procedimiento almacenado.
Msg 137, Level 15, State 1, Line 37
Debe declarar la variable escalar "@dCN".
Msg 137, Level 15, State 1, Line 38
Debe declarar la variable escalar "@sOD".
Msg 137, Level 15, State 1, Line 39
Debe declarar la variable escalar "@mA".
Msg 137, Level 15, State 2, Line 47
Debe declarar la variable escalar "@dCN"
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
sin imagen de perfil

Unión de Consultas a una sola Tabla

Publicado por Eddy (6 intervenciones) el 20/06/2016 23:28:53
Isaias... ya logre correguir el error, lo que hice es que esas variables :
Msg 137, Level 15, State 1, Line 37
Debe declarar la variable escalar "@dCN".
Msg 137, Level 15, State 1, Line 38
Debe declarar la variable escalar "@sOD".
Msg 137, Level 15, State 1, Line 39
Debe declarar la variable escalar "@mA".
Msg 137, Level 15, State 2, Line 47

las borre de la segunda consulta es decir borre el DECLARE Y SET..... y las coloque desde el principio, o sea el primer declare y listo... CORRIO.

GRACIAS...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
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

Unión de Consultas a una sola Tabla

Publicado por Isaias (4558 intervenciones) el 20/06/2016 23:55:31
Perfecto !!
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