Agregar consecutivo sql server 2005

02/09/2008 - 19:33 por Cristian | Informe spam
Hola a todos!
como agrego (concateno) un consecutivo(no lo tengo) a un campo de una
consulta.

ejemplo:

cod descp suc prov
12 ttttt s1 t1
13 ttttt s2 t2
14 ttttt s3 t1
15 ttttt s1 t2

quede

cod descp suc prov
12 1ttttt s1 t1
13 2ttttt s2 t2
14 3ttttt s3 t1
15 4ttttt s1 t2

la serie 1 2 3 4 ... agregarla a cada uno
gracias

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
02/09/2008 - 19:59 | Informe spam
Cristian,

Cual es el criterio a seguir para ordenar el conjunto y asignar el
consecutivo?

Trata:

create table t (
cod varchar(10) not null primary key,
descp varchar(50),
suc varchar(25),
prov varchar(25)
)
go

insert into t values('12', 'ttttt', 's1', 't1')
insert into t values('13', 'ttttt', 's2', 't2')
insert into t values('14', 'ttttt', 's3', 't1')
insert into t values('15', 'ttttt', 's1', 't2')
go

;with r_set
as
(
select
cod, descp, suc, prov,
row_number() over(order by cod) as rn
from
t
)
update r_set
set cod = cod + ltrim(rn)
go

select * from t
go

drop table t
go


AMB



"Cristian" wrote:

Mostrar la cita
#2 Cristian
02/09/2008 - 20:37 | Informe spam
agregarle o concatenarle un consecutivo a lo resultante de una consulta


tengo una consulta que trae una serie de registros y a esos agregarles un
consecutivo en el campo descrip
#3 Alejandro Mesa
03/09/2008 - 03:56 | Informe spam
Cristian,

Entiendo lo que quieres hacer, pero no indicas el criterio a usar para
asignar un consecutivo a una fila en especifico. Por ejemplo, ordenar las
filas por la columna [descp] y asignar el consecutivo.

create table t (
cod varchar(10) not null primary key,
descp varchar(50),
suc varchar(25),
prov varchar(25)
)
go

insert into t values('12', 'ttttt', 's1', 't1')
insert into t values('13', 'ttttt', 's2', 't2')
insert into t values('14', 'ttttt', 's3', 't1')
insert into t values('15', 'ttttt', 's1', 't2')
go

;with r_set
as
(
select
cod, descp, suc, prov,
row_number() over(order by [descp], [cod]) as rn
from
t
)
update r_set
set [descp] = ltrim(rn) + " - " + [descp]
go

select * from t
go

drop table t
go


AMB


"Cristian" wrote:

Mostrar la cita
#4 Cristian
03/09/2008 - 17:03 | Informe spam
Gracias, tu funciona funciona bien.
Ads by Google
Search Busqueda sugerida