Sentencia update..

09/02/2004 - 09:09 por José Luis Fernández | Informe spam
Buenos días...
Espero que alguien me pueda hechar una manita... porque no estoy demasiado
puesto en esto de las sentencias SQL..
Resulta que necesito actualizar un campo de una tabla en función del
resultado devuelto por un select de una tabla combinada y no me acaba de
funcionar...
El planteamiento sería el siguiente
UPDATE t1
SET c1="N"
FROM (SELECT c2,c3,c4,c5 FROM t1 INNER JOIN t2 ON t1.c6=t2.c7)
WHERE t2.c3 < '28/02/2000' AND t2.c4="S"
El problema es que no me acaba de funcionar y me actualiza todos los campos
en lugar de actualizar de actualizar solo los que cumplen la clausula
SELECT...

Gracias anticipadas...

Preguntas similare

Leer las respuestas

#1 José Raúl Fenollar Martínez
09/02/2004 - 09:19 | Informe spam
Prueba así

UPDATE t1 SET c1="N"
FROM t1 INNER JOIN t2 ON t1.c6=t2.c7
WHERE t2.c3 < '28/02/2000' AND t2.c4="S"


"José Luis Fernández" escribió en el mensaje
news:
Buenos días...
Espero que alguien me pueda hechar una manita... porque no estoy demasiado
puesto en esto de las sentencias SQL..
Resulta que necesito actualizar un campo de una tabla en función del
resultado devuelto por un select de una tabla combinada y no me acaba de
funcionar...
El planteamiento sería el siguiente
UPDATE t1
SET c1="N"
FROM (SELECT c2,c3,c4,c5 FROM t1 INNER JOIN t2 ON t1.c6=t2.c7)
WHERE t2.c3 < '28/02/2000' AND t2.c4="S"
El problema es que no me acaba de funcionar y me actualiza todos los


campos
en lugar de actualizar de actualizar solo los que cumplen la clausula
SELECT...

Gracias anticipadas...


Respuesta Responder a este mensaje
#2 Javier Loria
09/02/2004 - 13:35 | Informe spam
Hola:
No estoy seguro pero me parece que alguna de estas es lo que deseas:
==- Opcion 1
UPDATE t1
SET c1='N'
FROM t1 INNER JOIN t2
ON t1.c6=t2.c7

WHERE t2.c3 < '28/02/2000'
AND t2.c4="S"
- Opcion 2
UPDATE t1
SET c2='N', c3='N',c4='N',c5='N'
FROM t1 INNER JOIN t2
ON t1.c6=t2.c7

WHERE t2.c3 < '28/02/2000'
AND t2.c4="S"
==
Saludos,


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.

José Luis Fernández escribio:
Buenos días...
Espero que alguien me pueda hechar una manita... porque no estoy
demasiado puesto en esto de las sentencias SQL..
Resulta que necesito actualizar un campo de una tabla en función del
resultado devuelto por un select de una tabla combinada y no me acaba
de funcionar...
El planteamiento sería el siguiente
UPDATE t1
SET c1="N"
FROM (SELECT c2,c3,c4,c5 FROM t1 INNER JOIN t2 ON t1.c6=t2.c7)
WHERE t2.c3 < '28/02/2000' AND t2.c4="S"
El problema es que no me acaba de funcionar y me actualiza todos los
campos en lugar de actualizar de actualizar solo los que cumplen la
clausula SELECT...

Gracias anticipadas...
Respuesta Responder a este mensaje
#3 José Luis Fernández
09/02/2004 - 15:32 | Informe spam
Gracias por vuestra ayuda. Era justo lo que necesitaba...

"Javier Loria" escribió en el mensaje
news:ud%
Hola:
No estoy seguro pero me parece que alguna de estas es lo que deseas:
==> - Opcion 1
UPDATE t1
SET c1='N'
FROM t1 INNER JOIN t2
ON t1.c6=t2.c7

WHERE t2.c3 < '28/02/2000'
AND t2.c4="S"
- Opcion 2
UPDATE t1
SET c2='N', c3='N',c4='N',c5='N'
FROM t1 INNER JOIN t2
ON t1.c6=t2.c7

WHERE t2.c3 < '28/02/2000'
AND t2.c4="S"
==>
Saludos,


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.

José Luis Fernández escribio:
> Buenos días...
> Espero que alguien me pueda hechar una manita... porque no estoy
> demasiado puesto en esto de las sentencias SQL..
> Resulta que necesito actualizar un campo de una tabla en función del
> resultado devuelto por un select de una tabla combinada y no me acaba
> de funcionar...
> El planteamiento sería el siguiente
> UPDATE t1
> SET c1="N"
> FROM (SELECT c2,c3,c4,c5 FROM t1 INNER JOIN t2 ON t1.c6=t2.c7)
> WHERE t2.c3 < '28/02/2000' AND t2.c4="S"
> El problema es que no me acaba de funcionar y me actualiza todos los
> campos en lugar de actualizar de actualizar solo los que cumplen la
> clausula SELECT...
>
> Gracias anticipadas...


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida