Resultado de resultados de la CLI de DB2
-
03-07-2019 - |
Pregunta
Cuando ejecute consultas de línea de comandos en MySQL, puede usar opcionalmente ' \ G ' como un terminador de declaración, y en lugar de que el conjunto de resultados se enumere horizontalmente en la pantalla, enumerará cada columna verticalmente, con los datos correspondientes a la derecha. ¿Hay alguna manera de hacer lo mismo o algo similar con la utilidad de línea de comandos de DB2?
Ejemplo de resultado MySQL regular
mysql> select * from tagmap limit 2;
+----+---------+--------+
| id | blog_id | tag_id |
+----+---------+--------+
| 16 | 8 | 1 |
| 17 | 8 | 4 |
+----+---------+--------+
Ejemplo de resultado alternativo de MySQL:
mysql> select * from tagmap limit 2\G
*************************** 1. row ***************************
id: 16
blog_id: 8
tag_id: 1
*************************** 2. row ***************************
id: 17
blog_id: 8
tag_id: 4
2 rows in set (0.00 sec)
Obviamente, esto es mucho más útil cuando las columnas son cadenas grandes, o cuando hay muchas columnas en un conjunto de resultados, pero esto demuestra el formato mejor de lo que probablemente pueda explicar.
Solución
No creo que tal opción esté disponible con el cliente de línea de comandos de DB2. Consulte http://www.dbforums.com/showthread.php?t=708079 para algunas sugerencias. Para obtener un conjunto más general de información sobre el cliente de línea de comandos de DB2, puede consultar el artículo de IBM DeveloperWorks Procesador de línea de comandos y secuencias de comandos de DB2 .
Otros consejos
La utilidad de línea de comandos de DB2 siempre muestra datos en formato tabular. es decir, filas horizontales y columnas verticales. No admite ningún otro formato como el terminador de sentencias \ G para mysql. Pero sí, puede almacenar datos organizados por columnas en tablas de DB2 cuando se establece DB2_WORKLOAD = ANALYTICS.
db2 => connect to coldb
Database Connection Information
Database server = DB2/LINUXX8664 10.5.5
SQL authorization ID = BIMALJHA
Local database alias = COLDB
db2 => create table testtable (c1 int, c2 varchar(10)) organize by column
DB20000I The SQL command completed successfully.
db2 => insert into testtable values (2, 'bimal'),(3, 'kumar')
DB20000I The SQL command completed successfully.
db2 => select * from testtable
C1 C2
----------- ----------
2 bimal
3 kumar
2 record(s) selected.
db2 => terminate
DB20000I The TERMINATE command completed successfully.