2012-02-11 13 views
15

estoy ejecutar una consulta SELECT en una tabla en MySQL utilizando la interfaz de línea de comandos (no es un cliente GUI):longitud Límite de longtext campo en seleccionar los resultados

SELECT * FROM blog_entry;

Uno de los campos de blog_entry es del tipo 'longtext' y es un texto tan largo que cuando el resultado se muestra en mi terminal, la visualización de filas toma más de una línea. Esto causa un desorden feo de una pantalla, donde las columnas no son fácilmente visibles. ¿Qué técnica puedo usar en mi consulta SELECT que limitaría la cantidad de caracteres mostrados para cada campo para que los resultados de la fila impresa no se desborden a nuevas líneas?

Por favor, hágamelo saber si necesita alguna aclaración - estaré sensible

Respuesta

25

función del uso de MySQL SUBSTRING, como se describe en el documentation. Me gusta:

SELECT SUBSTRING(`text`, 1, 100) FROM blog_entry; 

Para seleccionar los primeros 100 caracteres.

+2

Encontré que las comillas simples invertidas alrededor 'texto' no fue necesario si 'texto' es un nombre de campo –

20

Puede utilizar la función LEFT() para obtener sólo los primeros caracteres:

SELECT LEFT(LongField, 20) AS LongField_First20chars 
FROM ... 
+0

no funciona en SQLite :-( –

+5

@ValentinHeinitz? La pregunta es acerca de MySQL, SQLite no. SQLite tiene 'substr()' función, se puede utilizar como en la respuesta de Oldskool. –

+0

Usted realmente no necesita el 'como LongField_First20chars' a menos que desee que sea más fácil utilizarlo desde un programa. – poolie

4
Select Cast(theLongTextField As VarChar(100)) From blogEntry 
+0

¡Genial! ¡Funciona en SQLite! –

5

La mejor manera de limpiar la legibilidad de los resultados de una consulta en la ventana de terminal es utilizar el localizador mysql, no modificar su consulta lo que puede ser demasiado engorroso.

  1. Establecer el buscapersonas:

    mysql> pager less -S

  2. Haga su consulta:

    mysql> SELECT * FROM ...

Esto hará que sus resultados en un formato más legible. Puede usar las teclas de flecha para desplazarse hacia arriba, abajo y hacia la izquierda y derecha para ver la tabla completa. Sólo tiene que pulsar Q para salir del modo de localizador de esa consulta, y luego simplemente ejecutar

mysql> pager more 

para volver al río salida normal si lo desea.

Cuestiones relacionadas