Consulta maldita

28/10/2004 - 15:47 por Julio | Informe spam
Hola tengo dos tablas:

-Personal-
Legajo
Apellido

-Movimientos-
ID
Legajo
Cargo
Funcion
Fecha

y necesito un join de las dos tablas por legajo, pero que solo obtenga el
ultimo cargo,funcion,fecha de la tabla movimientos. Alguien me puede ayudar.

Gracias
Julio

Preguntas similare

Leer las respuestas

#1 Maxi
28/10/2004 - 16:12 | Informe spam
Hola, a ver!! ultimo? como definis esto? cual es el ultimo realmente? por
que lo ordenas para saber cual es el ultimo


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Julio" escribió en el mensaje
news:
Hola tengo dos tablas:

-Personal-
Legajo
Apellido

-Movimientos-
ID
Legajo
Cargo
Funcion
Fecha

y necesito un join de las dos tablas por legajo, pero que solo obtenga el
ultimo cargo,funcion,fecha de la tabla movimientos. Alguien me puede
ayudar.

Gracias
Julio








Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.781 / Virus Database: 527 - Release Date: 21/10/2004
Respuesta Responder a este mensaje
#2 Julio
28/10/2004 - 16:17 | Informe spam
Mira el ultimo lo podriamos ver por el ID del movimiento, el mayor sería el
ultimo.


"Maxi" escribió en el mensaje
news:eF$
Hola, a ver!! ultimo? como definis esto? cual es el ultimo realmente? por
que lo ordenas para saber cual es el ultimo


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Julio" escribió en el mensaje
news:
> Hola tengo dos tablas:
>
> -Personal-
> Legajo
> Apellido
>
> -Movimientos-
> ID
> Legajo
> Cargo
> Funcion
> Fecha
>
> y necesito un join de las dos tablas por legajo, pero que solo obtenga


el
> ultimo cargo,funcion,fecha de la tabla movimientos. Alguien me puede
> ayudar.
>
> Gracias
> Julio
>
>
>



Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.781 / Virus Database: 527 - Release Date: 21/10/2004


Respuesta Responder a este mensaje
#3 Maxi
28/10/2004 - 16:30 | Informe spam
ok, proba esto entonces:

==
CREATE TABLE #PERSONAL (LEGAJO INT, APELLIDO CHAR(100))
GO

CREATE TABLE #MOV (ID INT IDENTITY,LEGAJO INT,CARGO CHAR(20),FUNCION
CHAR(20), FECHA DATETIME)
GO

INSERT INTO #PERSONAL VALUES (1,'PEREZ')
INSERT INTO #PERSONAL VALUES (2,'GARCIA')
INSERT INTO #PERSONAL VALUES (3,'OYOLA')


INSERT INTO #MOV (LEGAJO,CARGO,FUNCION,FECHA) VALUES
(1,'OPERARIO','PLC',GETDATE())
INSERT INTO #MOV (LEGAJO,CARGO,FUNCION,FECHA) VALUES
(1,'SUPERVISOR','TALLER',GETDATE())
INSERT INTO #MOV (LEGAJO,CARGO,FUNCION,FECHA) VALUES
(2,'OPERARIO','PLC',GETDATE())
INSERT INTO #MOV (LEGAJO,CARGO,FUNCION,FECHA) VALUES
(2,'SUPERVISOR','PLC',GETDATE())
INSERT INTO #MOV (LEGAJO,CARGO,FUNCION,FECHA) VALUES
(2,'GERENTE','PLC',GETDATE())

SELECT #MOV.LEGAJO, T3.ULTIMO AS ULTIMO, T2.CARGO,T2.FUNCION,T2.FECHA
FROM #MOV LEFT JOIN (SELECT LEGAJO,MAX(ID) AS ULTIMO FROM #MOV GROUP BY
LEGAJO) T3 ON
#MOV.LEGAJO = T3.LEGAJO
LEFT JOIN
(SELECT * FROM #MOV) T2 ON
T2.LEGAJO = #MOV.LEGAJO AND
T2.ID = T3.ULTIMO
GROUP BY #MOV.LEGAJO,T2.CARGO,T2.FUNCION,T2.FECHA,T3.ULTIMO

=
Quizas algun amigo del news discuta temas de performance ;-)


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Julio" escribió en el mensaje
news:%
Mira el ultimo lo podriamos ver por el ID del movimiento, el mayor sería
el
ultimo.


"Maxi" escribió en el mensaje
news:eF$
Hola, a ver!! ultimo? como definis esto? cual es el ultimo realmente? por
que lo ordenas para saber cual es el ultimo


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Julio" escribió en el mensaje
news:
> Hola tengo dos tablas:
>
> -Personal-
> Legajo
> Apellido
>
> -Movimientos-
> ID
> Legajo
> Cargo
> Funcion
> Fecha
>
> y necesito un join de las dos tablas por legajo, pero que solo obtenga


el
> ultimo cargo,funcion,fecha de la tabla movimientos. Alguien me puede
> ayudar.
>
> Gracias
> Julio
>
>
>



Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.781 / Virus Database: 527 - Release Date: 21/10/2004











Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.781 / Virus Database: 527 - Release Date: 21/10/2004
Respuesta Responder a este mensaje
#4 Julio
28/10/2004 - 17:04 | Informe spam
Funciono OK!

La verdad me supera...

"Maxi" escribió en el mensaje
news:
ok, proba esto entonces:

==>
CREATE TABLE #PERSONAL (LEGAJO INT, APELLIDO CHAR(100))
GO

CREATE TABLE #MOV (ID INT IDENTITY,LEGAJO INT,CARGO CHAR(20),FUNCION
CHAR(20), FECHA DATETIME)
GO

INSERT INTO #PERSONAL VALUES (1,'PEREZ')
INSERT INTO #PERSONAL VALUES (2,'GARCIA')
INSERT INTO #PERSONAL VALUES (3,'OYOLA')


INSERT INTO #MOV (LEGAJO,CARGO,FUNCION,FECHA) VALUES
(1,'OPERARIO','PLC',GETDATE())
INSERT INTO #MOV (LEGAJO,CARGO,FUNCION,FECHA) VALUES
(1,'SUPERVISOR','TALLER',GETDATE())
INSERT INTO #MOV (LEGAJO,CARGO,FUNCION,FECHA) VALUES
(2,'OPERARIO','PLC',GETDATE())
INSERT INTO #MOV (LEGAJO,CARGO,FUNCION,FECHA) VALUES
(2,'SUPERVISOR','PLC',GETDATE())
INSERT INTO #MOV (LEGAJO,CARGO,FUNCION,FECHA) VALUES
(2,'GERENTE','PLC',GETDATE())

SELECT #MOV.LEGAJO, T3.ULTIMO AS ULTIMO, T2.CARGO,T2.FUNCION,T2.FECHA
FROM #MOV LEFT JOIN (SELECT LEGAJO,MAX(ID) AS ULTIMO FROM #MOV GROUP BY
LEGAJO) T3 ON
#MOV.LEGAJO = T3.LEGAJO
LEFT JOIN
(SELECT * FROM #MOV) T2 ON
T2.LEGAJO = #MOV.LEGAJO AND
T2.ID = T3.ULTIMO
GROUP BY #MOV.LEGAJO,T2.CARGO,T2.FUNCION,T2.FECHA,T3.ULTIMO

=>
Quizas algun amigo del news discuta temas de performance ;-)


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Julio" escribió en el mensaje
news:%
> Mira el ultimo lo podriamos ver por el ID del movimiento, el mayor sería
> el
> ultimo.
>
>
> "Maxi" escribió en el mensaje
> news:eF$
>> Hola, a ver!! ultimo? como definis esto? cual es el ultimo realmente?


por
>> que lo ordenas para saber cual es el ultimo
>>
>>
>> Salu2
>> Maxi
>> Buenos Aires - Argentina
>> Desarrollador Microsoft 3 Estrellas .NET
>> Nunca consideres el estudio como una obligación sino como
>> una oportunidad para penetrar en el bello y maravillosos
>> mundo del saber.
>> - Albert Einstein
>>
>>
>>
>> "Julio" escribió en el mensaje
>> news:
>> > Hola tengo dos tablas:
>> >
>> > -Personal-
>> > Legajo
>> > Apellido
>> >
>> > -Movimientos-
>> > ID
>> > Legajo
>> > Cargo
>> > Funcion
>> > Fecha
>> >
>> > y necesito un join de las dos tablas por legajo, pero que solo


obtenga
> el
>> > ultimo cargo,funcion,fecha de la tabla movimientos. Alguien me puede
>> > ayudar.
>> >
>> > Gracias
>> > Julio
>> >
>> >
>> >
>>
>>
>>
>> Outgoing mail is certified Virus Free.
>> Checked by AVG anti-virus system (http://www.grisoft.com).
>> Version: 6.0.781 / Virus Database: 527 - Release Date: 21/10/2004
>>
>>
>
>



Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.781 / Virus Database: 527 - Release Date: 21/10/2004


Respuesta Responder a este mensaje
#5 Maxi
28/10/2004 - 17:10 | Informe spam
bueno me alegro mucho!! de todas formas fijate de tener indices piolas ;-)


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Julio" escribió en el mensaje
news:
Funciono OK!

La verdad me supera...

"Maxi" escribió en el mensaje
news:
ok, proba esto entonces:

==>>
CREATE TABLE #PERSONAL (LEGAJO INT, APELLIDO CHAR(100))
GO

CREATE TABLE #MOV (ID INT IDENTITY,LEGAJO INT,CARGO CHAR(20),FUNCION
CHAR(20), FECHA DATETIME)
GO

INSERT INTO #PERSONAL VALUES (1,'PEREZ')
INSERT INTO #PERSONAL VALUES (2,'GARCIA')
INSERT INTO #PERSONAL VALUES (3,'OYOLA')


INSERT INTO #MOV (LEGAJO,CARGO,FUNCION,FECHA) VALUES
(1,'OPERARIO','PLC',GETDATE())
INSERT INTO #MOV (LEGAJO,CARGO,FUNCION,FECHA) VALUES
(1,'SUPERVISOR','TALLER',GETDATE())
INSERT INTO #MOV (LEGAJO,CARGO,FUNCION,FECHA) VALUES
(2,'OPERARIO','PLC',GETDATE())
INSERT INTO #MOV (LEGAJO,CARGO,FUNCION,FECHA) VALUES
(2,'SUPERVISOR','PLC',GETDATE())
INSERT INTO #MOV (LEGAJO,CARGO,FUNCION,FECHA) VALUES
(2,'GERENTE','PLC',GETDATE())

SELECT #MOV.LEGAJO, T3.ULTIMO AS ULTIMO, T2.CARGO,T2.FUNCION,T2.FECHA
FROM #MOV LEFT JOIN (SELECT LEGAJO,MAX(ID) AS ULTIMO FROM #MOV GROUP BY
LEGAJO) T3 ON
#MOV.LEGAJO = T3.LEGAJO
LEFT JOIN
(SELECT * FROM #MOV) T2 ON
T2.LEGAJO = #MOV.LEGAJO AND
T2.ID = T3.ULTIMO
GROUP BY #MOV.LEGAJO,T2.CARGO,T2.FUNCION,T2.FECHA,T3.ULTIMO

=>>
Quizas algun amigo del news discuta temas de performance ;-)


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Julio" escribió en el mensaje
news:%
> Mira el ultimo lo podriamos ver por el ID del movimiento, el mayor
> sería
> el
> ultimo.
>
>
> "Maxi" escribió en el mensaje
> news:eF$
>> Hola, a ver!! ultimo? como definis esto? cual es el ultimo realmente?


por
>> que lo ordenas para saber cual es el ultimo
>>
>>
>> Salu2
>> Maxi
>> Buenos Aires - Argentina
>> Desarrollador Microsoft 3 Estrellas .NET
>> Nunca consideres el estudio como una obligación sino como
>> una oportunidad para penetrar en el bello y maravillosos
>> mundo del saber.
>> - Albert Einstein
>>
>>
>>
>> "Julio" escribió en el mensaje
>> news:
>> > Hola tengo dos tablas:
>> >
>> > -Personal-
>> > Legajo
>> > Apellido
>> >
>> > -Movimientos-
>> > ID
>> > Legajo
>> > Cargo
>> > Funcion
>> > Fecha
>> >
>> > y necesito un join de las dos tablas por legajo, pero que solo


obtenga
> el
>> > ultimo cargo,funcion,fecha de la tabla movimientos. Alguien me puede
>> > ayudar.
>> >
>> > Gracias
>> > Julio
>> >
>> >
>> >
>>
>>
>>
>> Outgoing mail is certified Virus Free.
>> Checked by AVG anti-virus system (http://www.grisoft.com).
>> Version: 6.0.781 / Virus Database: 527 - Release Date: 21/10/2004
>>
>>
>
>



Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.781 / Virus Database: 527 - Release Date: 21/10/2004











Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.781 / Virus Database: 527 - Release Date: 21/10/2004
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida