Consulta Sql

22/10/2007 - 21:14 por victorgomezmora | Informe spam
Buenas tardes grupo:
La verdad que estoy necesitado de ustedes, fíjense, tengo un UPDATE de
una consulta, la cual requiere que una tabla que ya tengo con muchos
registros, los actualice con los de otra tabla que acabo de crear, es
decir:
tabla1: Nombre, Cedula y NumeroCuenta
tabla2: Cedula y NumeroCuenta.
Tengo que colocarle el NumeroCuenta a los de la tabla1, con los que
sean de iguales Cedulas de la tabla2, la relación es por Cedula.
Aqui les coloco el código que estaba creando pero algo o varias cosas
me faltan, estuve revisando, y según veo me falta que despues del
último where, otro where con un IN, pero no logro hacerlo:

UPDATE tabla1 set NumeroCuenta = (SELECT tabla1.*, tabla2.* FROM
tabla1 INNER JOIN tabla2 ON (tabla1.cedula = tabla2.cedula)
WHERE (((tabla1.cedula)=[tabla2].[cedula]));

Les agradezco la molestia para leer mi pregunta.

Preguntas similare

Leer las respuestas

#6 ROBOTX
29/10/2007 - 08:47 | Informe spam
hola, saben de hecho tambien tengo casi el mismo problema con las
actualizaciones en mi server, de hehco soy novato en esto apenas lo
estamso viendo en la escuela, bueno les comento...
pude crear los triggers enla base, pero ahora no puedo crear funciones
ni procedimientos, y es lo unico que me pide es definir un operador
que tome a un usuario y un libro como datos de entrada, y que indique
si el usuario dado puede realizar un prestamos o una reservacion..

teniendo ya mis tablas libro, reservaciones, prestamos, usuarios.
espero puedan ayudarme con esta granb duda..
ha escrito:
De nuevo jeastman, mil gracias por tu apoyo... ya me sirvió!!!

On 23 oct, 09:48, "jeastman - Hotmail" wrote:
> En realidad le sobraba algo
>
> update tabla1
> set cedula = t2.cedula
> from tabla2 t2 inner join tabla1 t1 on
> t1.numeroCuenta = t2.numeroCuenta
>
> en la anterior te decía set t1.cedula = t2.ceula, pero las reglas de
> sintaxis del T-SQL no lo permite, disculpa esa, ahi la tienes y debería
> funciona, de todas formas si consigues algún error puede ser de sintaxis
> solo revisa y corrige, es la forma que acostumbro hacerlo
>
> Ahora, si quieres que vaya más rápido pondo de la forma siguiente
>
> begin transaction
>
> update tabla1
> set cedula = t2.cedula
> from tabla2 t2 inner join tabla1 t1 on
> t1.numeroCuenta = t2.numeroCuenta
>
> commit transaction
>
> Cuando se trabaja con transacciones funciona más eficiente
>
> escribió en el mensajenews:
> Hola jeastman, me dice que falta operador en la consulta... pude
> resolver con una aplicación sencilla en vb, que me comparara las dos
> tablas... de todas maneras, nunca está de más conocer cómo se haría y
> así optimizar el código... de nuevo gracias a los dos por tomarse la
> molestia.
>
> On 23 oct, 00:09, "jeastman - Hotmail" wrote:
>
>
>
> > Que tal Victor.
>
> > Prueba con esto
>
> > update tabla1
> > set t1.cedula = t2.cedula
> > from tabla2 t2 inner join tabla1 t1 on
> > t1.numeroCuenta = t2.numeroCuenta
>
> > Espero que te sirva.
>
> > escribió en el
> > mensajenews:
> > Buenas tardes grupo:
> > La verdad que estoy necesitado de ustedes, fíjense, tengo un UPDATE de
> > una consulta, la cual requiere que una tabla que ya tengo con muchos
> > registros, los actualice con los de otra tabla que acabo de crear, es
> > decir:
> > tabla1: Nombre, Cedula y NumeroCuenta
> > tabla2: Cedula y NumeroCuenta.
> > Tengo que colocarle el NumeroCuenta a los de la tabla1, con los que
> > sean de iguales Cedulas de la tabla2, la relación es por Cedula.
> > Aqui les coloco el código que estaba creando pero algo o varias cosas
> > me faltan, estuve revisando, y según veo me falta que despues del
> > último where, otro where con un IN, pero no logro hacerlo:
>
> > UPDATE tabla1 set NumeroCuenta = (SELECT tabla1.*, tabla2.* FROM
> > tabla1 INNER JOIN tabla2 ON (tabla1.cedula = tabla2.cedula)
> > WHERE (((tabla1.cedula)=[tabla2].[cedula]));
>
> > Les agradezco la molestia para leer mi pregunta.- Ocultar texto de la cita -
>
> - Mostrar texto de la cita -
Respuesta Responder a este mensaje
#7 jeastman - Hotmail
29/10/2007 - 17:57 | Informe spam
Hola ROBOTX.

No se si te comprendí bien, aqui vamos con lo que creo que dices, cualquier
cosa amplías la información.

1. Dices que no puedes crear ni funciones ni procedimientos, por favor
indica cual es el error que tienes
2. Si necesitas saber si un usuario en particular puede o no realizar una
actividad, primero que nada deberías tener registrado en alguna tabla los
permisos que ese usuario tiene, luego viene la forma en que vas a trabajar
con SP o consultas directas desde la aplicación cliente, en el primer caso
pasas el identificador del usuario como un parámetro en el segundo lo
incluyes directamente en la consulta que se envía al servidor.

Te sugiero que páses más información.

Saludos.

"ROBOTX" escribió en el mensaje
news:
hola, saben de hecho tambien tengo casi el mismo problema con las
actualizaciones en mi server, de hehco soy novato en esto apenas lo
estamso viendo en la escuela, bueno les comento...
pude crear los triggers enla base, pero ahora no puedo crear funciones
ni procedimientos, y es lo unico que me pide es definir un operador
que tome a un usuario y un libro como datos de entrada, y que indique
si el usuario dado puede realizar un prestamos o una reservacion..

teniendo ya mis tablas libro, reservaciones, prestamos, usuarios.
espero puedan ayudarme con esta granb duda..
ha escrito:
De nuevo jeastman, mil gracias por tu apoyo... ya me sirvió!!!

On 23 oct, 09:48, "jeastman - Hotmail" wrote:
> En realidad le sobraba algo
>
> update tabla1
> set cedula = t2.cedula
> from tabla2 t2 inner join tabla1 t1 on
> t1.numeroCuenta = t2.numeroCuenta
>
> en la anterior te decía set t1.cedula = t2.ceula, pero las reglas de
> sintaxis del T-SQL no lo permite, disculpa esa, ahi la tienes y debería
> funciona, de todas formas si consigues algún error puede ser de sintaxis
> solo revisa y corrige, es la forma que acostumbro hacerlo
>
> Ahora, si quieres que vaya más rápido pondo de la forma siguiente
>
> begin transaction
>
> update tabla1
> set cedula = t2.cedula
> from tabla2 t2 inner join tabla1 t1 on
> t1.numeroCuenta = t2.numeroCuenta
>
> commit transaction
>
> Cuando se trabaja con transacciones funciona más eficiente
>
> escribió en el
> mensajenews:
> Hola jeastman, me dice que falta operador en la consulta... pude
> resolver con una aplicación sencilla en vb, que me comparara las dos
> tablas... de todas maneras, nunca está de más conocer cómo se haría y
> así optimizar el código... de nuevo gracias a los dos por tomarse la
> molestia.
>
> On 23 oct, 00:09, "jeastman - Hotmail" wrote:
>
>
>
> > Que tal Victor.
>
> > Prueba con esto
>
> > update tabla1
> > set t1.cedula = t2.cedula
> > from tabla2 t2 inner join tabla1 t1 on
> > t1.numeroCuenta = t2.numeroCuenta
>
> > Espero que te sirva.
>
> > escribió en el
> > mensajenews:
> > Buenas tardes grupo:
> > La verdad que estoy necesitado de ustedes, fíjense, tengo un UPDATE de
> > una consulta, la cual requiere que una tabla que ya tengo con muchos
> > registros, los actualice con los de otra tabla que acabo de crear, es
> > decir:
> > tabla1: Nombre, Cedula y NumeroCuenta
> > tabla2: Cedula y NumeroCuenta.
> > Tengo que colocarle el NumeroCuenta a los de la tabla1, con los que
> > sean de iguales Cedulas de la tabla2, la relación es por Cedula.
> > Aqui les coloco el código que estaba creando pero algo o varias cosas
> > me faltan, estuve revisando, y según veo me falta que despues del
> > último where, otro where con un IN, pero no logro hacerlo:
>
> > UPDATE tabla1 set NumeroCuenta = (SELECT tabla1.*, tabla2.* FROM
> > tabla1 INNER JOIN tabla2 ON (tabla1.cedula = tabla2.cedula)
> > WHERE (((tabla1.cedula)=[tabla2].[cedula]));
>
> > Les agradezco la molestia para leer mi pregunta.- Ocultar texto de la
> > cita -
>
> - Mostrar texto de la cita -
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida