SQL Server - consulta actualiza campos

 
Vista:

consulta actualiza campos

Publicado por ale (4 intervenciones) el 22/12/2006 17:17:28
hola necesito ayuda con una consulta resulta que tengo 1 tabla mas o menos asi

clave nombre marcador
100 nombre1
101 nombre2
100 nombre1
102 nombre 2
103 nombre 3

y lo que necesito es ectualizar solo 1 de los registros que se repiten por el nombre
osea

clave nombre marcador
100 nombre1 1
101 nombre2 1
100 nombre1
102 nombre 2
103 nombre 3 1

intente esta consulta pero me actualiza todos

UPDATE tabla
SET marcador = '1'
FROM (SELECT distinct(nombre) FROM tabla ) as t1
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

RE:consulta actualiza campos

Publicado por Isaías (3308 intervenciones) el 22/12/2006 21:25:46
¿Para que actualizas el campo "marcador", Quieres borrar los duplicados?
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

RE:consulta actualiza campos

Publicado por ale (9 intervenciones) el 02/01/2007 22:50:10
hola! perdon por responder tan tarde sali la semana
no solo quiero marcarlos en la tabla hay un campo ,arcador el cual debe actulizar cuando leo la tabla y asi me marque el 1 reg de cada uno de los repetidos o en su defecto si no estarepetido pues el registro unico

gracias!!!
ayudame porfa
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

RE:consulta actualiza campos

Publicado por Isaías (3308 intervenciones) el 03/01/2007 00:21:52
Aqui voy

SELECT COUNT(*) - 1 as Rows, clave, nombre
INTO #DuplicateRecords
FROM tabla
GROUP BY clave, nombre
HAVING COUNT(*) > 1

DECLARE @Record int
DECLARE @RowsDup int
-- Las variables a comparar, deben ser del mismo tipo de la tabla origen
DECLARE @clave int,
DECLARE @nombre varchar(10)
WHILE EXISTS(SELECT * FROM #DuplicateRecords)
BEGIN
SELECT TOP 1 @RowsDup = Rows, @clave = clave, @nombre = nombre
FROM #DuplicateRecords
SET ROWCOUNT @RowsDup
UPDATE tabla SET marcador = 1 WHERE clave = @clave AND nombre = @nombre

DELETE #DuplicateRecords WHERE clave = @clave AND nombre = @nombre
SET ROWCOUNT 0
CONTINUE
END
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

RE:consulta actualiza campos

Publicado por ale (9 intervenciones) el 04/01/2007 19:00:42
hola oye ya lo in tente pero me marca error cuando
@RowsDup = Rows

noo acepta eso de row????

hay alguna instruccion o funcion que me permita saber una clave unica de cada uno de los registros insertados
estaba viendo la de newid() pero cada seleccion cambia el nobre de identificador
hay alguno que no la cambie?????

gracias!!! espero repuesta porfas
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

RE:consulta actualiza campos

Publicado por Isaías (3308 intervenciones) el 04/01/2007 20:18:43
Ale

¿Cual es le mensaje de error?
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

RE:consulta actualiza campos

Publicado por ale (9 intervenciones) el 04/01/2007 23:45:55
hola me marca que no es valid eso del row, sera la ver de sql???? VER 8.00.760

mira estoy haciendo esto

create procedure sp_modifica
as
ALTER TABLE TABLA ADD id_num int IDENTITY(1,1)

--select * from tabla

update tabla set modif='1'
where id_num in (select max(id_num)
from tabla
group by nombre)

ALTER TABLE TABLA DROP COLUMN id_num

SOLO QUE ALCORRER EL PROCEDIMIENTO ME MARCA ERROR(COMO QUE AL LLEGAR AL UPDATE AUN NO ME CREA LA NUEVA COLUMNA Y TRUENA)

PERO SI EJECUTO INSTRUCCION POR INSTRUCCION
SIN SP ME HACE BIEN LO QUE QUIERO
TU SABRAS A QUE SE DEBE ESTO????????? Q ME HACE FALTA??????

GRACIAS!!!!
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

RE:consulta actualiza campos

Publicado por Isaías (3308 intervenciones) el 05/01/2007 00:31:50
Como dijo JACK, vayamos por partes.

Esta instruccion, JAMAZ deberia estar en tu store procedure

ALTER TABLE TABLA ADD id_num int IDENTITY(1,1)

¿Sabes lo que hace?

Le agrega una columna a tu TABLA de tipo INT (NUMERICA) y ademas de AUTONUMERACION (IDENTITY).

Por lo tanto, no querras que cada que corra tu store, le agregue dicha columna, ¿O si?.

Ahora si, ¿Que es lo que quieres hacer?
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

RE:consulta actualiza campos

Publicado por ale (9 intervenciones) el 05/01/2007 00:43:08
SI!, SI SE LO QUE HACE LA INSTRUCCION , EL CHISTE ES PODER AMARRAR O DEFINIR UNA COLUMNA, CON LA CUAL IDENTIFICAR DE MANERA UNICA A CADA UNO DE LOS REGISTROS ALMACENADOS EN ESTA TABLA(LA DEL EJEMPLO QUE PUSE EN MI PRIMER CORREO, YA QUE LA CVE QUE TIENE NO UNICA) Y ASI ACTULIZAR EL DATO QUE NECESITO.

YO SI HABIA METIDO ANTERIOR MENTE EN UN PROCEDIMIENTO LA INSTRUCCION ALTER TABLE ADD, ENTONCES NO SEPORQUE NO FUNCIONA?????

OTRA COSA, ALFINAL BORRO LA COLUMNA QUE AGREGO AL PRINCIPIO PARA CUANDO SE EJECUTE EL SP , LA TABLA TENGA SU ESTRUCTURA ORIGINAL.

BUENO SI FUNCIONARA ..... ESA SERIA LA IDEA

TE DIGO SI LO CORRO
POR PASOS SI LOGRO EL OBJETIVO, PERO SI QUISIERA EJECUTAR LAS INSTRUCCIONES DENTRO DEL SP YA NO ME LO HACE

GRACIAS! ESPERO TUS COMENTARIOS
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

RE:consulta actualiza campos

Publicado por Isaías (3308 intervenciones) el 05/01/2007 21:48:11
Ale

No escribas todo en mayusculas, denota ENOJO.

El ALTER TABLE, la primera vez que lo ejecutaste, se realizo, pero no lo necesitas hacer cada vez que el store se ejecute.

Si lo que necesitas es crear una columna con un dato UNICO, entonces solo ejecutas tu ALTER TABLA en tu analizador de consultas y listo, no mas.

¿Eso es lo que estas buscando?
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

RE:consulta actualiza campos

Publicado por ale (9 intervenciones) el 08/01/2007 15:20:09
upps! perdon!

no sabia eso y no no estoy enojada eh!!! ,jaja si si quedo ya muchas(de hecho solo ejecute la consulta sin el sp) gracias , por resolver las dudas del foro y en especial por ayudarme.

gracias isaías!!!
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