Unir dos filas en una sola.

12/01/2005 - 18:31 por Salvador Ramos | Informe spam
Hola:

Estoy haciendo un proceso de importación a SQL Server un poco peculiar.
Tengo un fichero .txt que contiene un listado, éste lleva encabezados,
números de página, etc... y además en el detalle cada fila está impresa con
datos en dos líneas.

He conseguido eliminar toda la información que no me vale para guardarla en
una tabla. Ahora me queda unir cada dos líneas en una sola, y esa es mi
duda, como podría hacerlo de forma que realmente se uniese una línea y la
siguiente en una sola ? Os paso un ejemplo de lo que tengo (además indicaros
que la tabla sólo tiene un campo VarChar(300) llamado Texto):
0001 Pepe Lopez
12345
0002 Juan Garcia
11112
...

Y lo que necesito es:
0001 Pepe Lopez 12345
0002 Juan Garcia 11112

No habría ningún problema en añadir algún campo a dicha tabla, ya que es una
tabla temporal mía que puedo poner el diseño que necesite. Por ahora tiene
un sólo campo, porque estoy importando como un sólo campo de texto cada
línea del listado, para posteriormente con SUBSTRING ir extrayendo las
partes que necesito y guardandolas en otra tabla ya definitiva con los
campos que necesito.

Muchas gracias

Un saludo
Salvador Ramos
Murcia - España
[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL server, Windows DNA y .NET)

Preguntas similare

Leer las respuestas

#1 Manuel Vera
12/01/2005 - 18:55 | Informe spam
El archivo de texto lo lees desde VB o desde SQLServer?

MV

"Salvador Ramos" wrote in message
news:OWcKRyM%
Hola:

Estoy haciendo un proceso de importación a SQL Server un poco peculiar.
Tengo un fichero .txt que contiene un listado, éste lleva encabezados,
números de página, etc... y además en el detalle cada fila está impresa


con
datos en dos líneas.

He conseguido eliminar toda la información que no me vale para guardarla


en
una tabla. Ahora me queda unir cada dos líneas en una sola, y esa es mi
duda, como podría hacerlo de forma que realmente se uniese una línea y la
siguiente en una sola ? Os paso un ejemplo de lo que tengo (además


indicaros
que la tabla sólo tiene un campo VarChar(300) llamado Texto):
0001 Pepe Lopez
12345
0002 Juan Garcia
11112
...

Y lo que necesito es:
0001 Pepe Lopez 12345
0002 Juan Garcia 11112

No habría ningún problema en añadir algún campo a dicha tabla, ya que es


una
tabla temporal mía que puedo poner el diseño que necesite. Por ahora tiene
un sólo campo, porque estoy importando como un sólo campo de texto cada
línea del listado, para posteriormente con SUBSTRING ir extrayendo las
partes que necesito y guardandolas en otra tabla ya definitiva con los
campos que necesito.

Muchas gracias

Un saludo
Salvador Ramos
Murcia - España
[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL server, Windows DNA y .NET)


Respuesta Responder a este mensaje
#2 Liliana Sorrentino
12/01/2005 - 19:04 | Informe spam
Hola Salvador,
El archivo tiene siempre el mismo formato? ¿La primera línea de las dos a
unir tiene cuatro dígitos + espacio + cualquierotracosa?

"Salvador Ramos" escribió en el
mensaje news:OWcKRyM#
Hola:

Estoy haciendo un proceso de importación a SQL Server un poco peculiar.
Tengo un fichero .txt que contiene un listado, éste lleva encabezados,
números de página, etc... y además en el detalle cada fila está impresa


con
datos en dos líneas.

He conseguido eliminar toda la información que no me vale para guardarla


en
una tabla. Ahora me queda unir cada dos líneas en una sola, y esa es mi
duda, como podría hacerlo de forma que realmente se uniese una línea y la
siguiente en una sola ? Os paso un ejemplo de lo que tengo (además


indicaros
que la tabla sólo tiene un campo VarChar(300) llamado Texto):
0001 Pepe Lopez
12345
0002 Juan Garcia
11112
...

Y lo que necesito es:
0001 Pepe Lopez 12345
0002 Juan Garcia 11112

No habría ningún problema en añadir algún campo a dicha tabla, ya que es


una
tabla temporal mía que puedo poner el diseño que necesite. Por ahora tiene
un sólo campo, porque estoy importando como un sólo campo de texto cada
línea del listado, para posteriormente con SUBSTRING ir extrayendo las
partes que necesito y guardandolas en otra tabla ya definitiva con los
campos que necesito.

Muchas gracias

Un saludo
Salvador Ramos
Murcia - España
[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL server, Windows DNA y .NET)


Respuesta Responder a este mensaje
#3 Salvador Ramos
12/01/2005 - 19:07 | Informe spam
Lo estoy haciendo todo desde SQL Server, en un paquete DTS

Un saludo
Salvador Ramos
Murcia - España
[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL server, Windows DNA y .NET)

"Manuel Vera" escribió en el mensaje
news:OrfRa7M%
El archivo de texto lo lees desde VB o desde SQLServer?

MV

"Salvador Ramos" wrote in message
news:OWcKRyM%
Hola:

Estoy haciendo un proceso de importación a SQL Server un poco peculiar.
Tengo un fichero .txt que contiene un listado, éste lleva encabezados,
números de página, etc... y además en el detalle cada fila está impresa


con
datos en dos líneas.

He conseguido eliminar toda la información que no me vale para guardarla


en
una tabla. Ahora me queda unir cada dos líneas en una sola, y esa es mi
duda, como podría hacerlo de forma que realmente se uniese una línea y la
siguiente en una sola ? Os paso un ejemplo de lo que tengo (además


indicaros
que la tabla sólo tiene un campo VarChar(300) llamado Texto):
0001 Pepe Lopez
12345
0002 Juan Garcia
11112
...

Y lo que necesito es:
0001 Pepe Lopez 12345
0002 Juan Garcia 11112

No habría ningún problema en añadir algún campo a dicha tabla, ya que es


una
tabla temporal mía que puedo poner el diseño que necesite. Por ahora
tiene
un sólo campo, porque estoy importando como un sólo campo de texto cada
línea del listado, para posteriormente con SUBSTRING ir extrayendo las
partes que necesito y guardandolas en otra tabla ya definitiva con los
campos que necesito.

Muchas gracias

Un saludo
Salvador Ramos
Murcia - España
[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL server, Windows DNA y .NET)






Respuesta Responder a este mensaje
#4 Salvador Ramos
12/01/2005 - 19:07 | Informe spam
Si :-)


Un saludo
Salvador Ramos
Murcia - España
[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL server, Windows DNA y .NET)

"Liliana Sorrentino" escribió en el mensaje
news:%23Q%23szEN%
Hola Salvador,
El archivo tiene siempre el mismo formato? ¿La primera línea de las dos a
unir tiene cuatro dígitos + espacio + cualquierotracosa?

"Salvador Ramos" escribió en el
mensaje news:OWcKRyM#
Hola:

Estoy haciendo un proceso de importación a SQL Server un poco peculiar.
Tengo un fichero .txt que contiene un listado, éste lleva encabezados,
números de página, etc... y además en el detalle cada fila está impresa


con
datos en dos líneas.

He conseguido eliminar toda la información que no me vale para guardarla


en
una tabla. Ahora me queda unir cada dos líneas en una sola, y esa es mi
duda, como podría hacerlo de forma que realmente se uniese una línea y la
siguiente en una sola ? Os paso un ejemplo de lo que tengo (además


indicaros
que la tabla sólo tiene un campo VarChar(300) llamado Texto):
0001 Pepe Lopez
12345
0002 Juan Garcia
11112
...

Y lo que necesito es:
0001 Pepe Lopez 12345
0002 Juan Garcia 11112

No habría ningún problema en añadir algún campo a dicha tabla, ya que es


una
tabla temporal mía que puedo poner el diseño que necesite. Por ahora
tiene
un sólo campo, porque estoy importando como un sólo campo de texto cada
línea del listado, para posteriormente con SUBSTRING ir extrayendo las
partes que necesito y guardandolas en otra tabla ya definitiva con los
campos que necesito.

Muchas gracias

Un saludo
Salvador Ramos
Murcia - España
[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL server, Windows DNA y .NET)






Respuesta Responder a este mensaje
#5 Liliana Sorrentino
12/01/2005 - 19:20 | Informe spam
No sé el volumen de tu información así que no me juego por la performance,
pero tal vez esto te sirva:

create table #tabla
(Texto VarChar(300))
insert #tabla select '0001 Pepe Lopez'
insert #tabla select '12345'
insert #tabla select '0002 Juan Garcia'
insert #tabla select '11112'

select identity (smallint, 1, 1) as orden, texto
into #tablaOrden
from #tabla

select t1.texto + ' ' + t2.texto
from #tablaOrden t1
inner join #tablaOrden t2 on t2.orden = t1.orden + 1
where t1.orden % 2 <> 0

Cariños, Liliana.

"Salvador Ramos" escribió en el
mensaje news:#RrUxGN#
Si :-)


Un saludo
Salvador Ramos
Murcia - España
[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL server, Windows DNA y .NET)

"Liliana Sorrentino" escribió en el


mensaje
news:%23Q%23szEN%
> Hola Salvador,
> El archivo tiene siempre el mismo formato? ¿La primera línea de las dos


a
> unir tiene cuatro dígitos + espacio + cualquierotracosa?
>
> "Salvador Ramos" escribió en el
> mensaje news:OWcKRyM#
>> Hola:
>>
>> Estoy haciendo un proceso de importación a SQL Server un poco peculiar.
>> Tengo un fichero .txt que contiene un listado, éste lleva encabezados,
>> números de página, etc... y además en el detalle cada fila está impresa
> con
>> datos en dos líneas.
>>
>> He conseguido eliminar toda la información que no me vale para


guardarla
> en
>> una tabla. Ahora me queda unir cada dos líneas en una sola, y esa es mi
>> duda, como podría hacerlo de forma que realmente se uniese una línea y


la
>> siguiente en una sola ? Os paso un ejemplo de lo que tengo (además
> indicaros
>> que la tabla sólo tiene un campo VarChar(300) llamado Texto):
>> 0001 Pepe Lopez
>> 12345
>> 0002 Juan Garcia
>> 11112
>> ...
>>
>> Y lo que necesito es:
>> 0001 Pepe Lopez 12345
>> 0002 Juan Garcia 11112
>>
>> No habría ningún problema en añadir algún campo a dicha tabla, ya que


es
> una
>> tabla temporal mía que puedo poner el diseño que necesite. Por ahora
>> tiene
>> un sólo campo, porque estoy importando como un sólo campo de texto cada
>> línea del listado, para posteriormente con SUBSTRING ir extrayendo las
>> partes que necesito y guardandolas en otra tabla ya definitiva con los
>> campos que necesito.
>>
>> Muchas gracias
>>
>> Un saludo
>> Salvador Ramos
>> Murcia - España
>> [Microsoft MVP SQL Server]
>> www.helpdna.net (información sobre SQL server, Windows DNA y .NET)
>>
>>
>
>


Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida