SQLPlus configuración para generar separados por tabulaciones de datos de archivo
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?
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)