SQLPlus configuración para generar separados por tabulaciones de datos de archivo

StackOverflow https://stackoverflow.com/questions/106323

  •  01-07-2019
  •  | 
  •  

Pregunta

Alguien tiene un buen conjunto de sqlplus directivas de configuración para ayudar a transformar una consulta sql dada en bien separados por tabulaciones de salida para tirar en una hoja de cálculo o procesamiento?

¿Fue útil?

Solución

Echa un vistazo a la documentación de Oracle:

Usted puede generar una ficha en Oracle mediante el uso de la ficha del valor ASCII 9 y la función chr:

select chr(9) from dual;

Otros consejos

Como Justin, señaló en su vínculo, el uso de la set colsep la función de comando SQLPlus ahorra escribir un separador para cada columna.

Pero para delimitado por tabuladores, set colsep Chr(9) no, no funcionará.

Para UNIX o LINUX, uso set colsep ' ' con el espacio entre las comillas simples de ser un tipo de ficha.

Para Windows, use estas opciones:

col TAB# new_value TAB NOPRINT
select chr(9) TAB# from dual;
set colsep "&TAB"

select * from table;

Una particular secuencia de comandos que me han robado en más de una ocasión viene de un hilo en AskTom la extracción de datos a un archivo plano.Si necesitaba una rápida y sucia de archivo plano de SQL*Plus.Me gustaría tienden a preferir la DUMP_CSV función de Tom publicado anteriormente en ese hilo para cualquier tipo de proceso continuo, aunque.

Tengo un estúpido solución.Funcionó muy bien.

Solución

SELECT column1 || CHR(9) || column2 || CHR(9) || column3 ... ...
FROM table

el principio detrás de

En realidad, es sólo un la concatenación de cadenas.

CHR(9) -> ' '

columna1 || CHR(9) || 2 -> concat(columna1, ' ', columna2)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top