Как настроить параметры отображения командной строки mysql? - PullRequest
33 голосов
/ 26 ноября 2010

Командная строка mysql не отображает результаты должным образом.Я имею в виду, что некоторые столбцы таблицы находятся в 1-й строке, а некоторые во 2-й строке.Вывод также разбит на две строки.Как мне отрегулировать эти настройки, чтобы они правильно отображали результаты.

Ответы [ 5 ]

61 голосов
/ 26 ноября 2010

Вы можете использовать команду \G (вместо ;) в конце ваших запросов SQL ...

Пример:

SELECT * FROM USER \G

Она будет отображать вашу таблицу в виде строки вместо формы столбца.

34 голосов
/ 26 ноября 2010

в основном это происходит, когда извлекаемая строка слишком длинная.попробуйте поиграть на своем терминале, чтобы иметь полосу прокрутки, и вы даже можете уменьшить шрифты.

Опция mysql

mysql> pager less -n -i -S
5 голосов
/ 03 ноября 2012

Чтобы установить автоматическую прокрутку, добавьте это в файл my.cnf в секции [client] следующим образом:

[client]
pager = less -n -i -S
1 голос
/ 21 сентября 2016

В командной строке Microsoft Windows mysql щелкните правой кнопкой мыши на границе приглашения и выберите «Свойства», затем перейдите на вкладку «Макет» и измените ширину размера окна или ширину экранного буфера на более подходящий вид. Это должно решить проблему. enter image description here

0 голосов
/ 15 января 2019

Другой вариант, который я искал и наконец нашел, - это строковая функция MySQL LEFT().

  • LEFT(str,len)

Возвращает самые левые len символов из строки str или NULL , если аргумент равен NULL .

Например ...

mysql> SELECT
    ->   `bib`,
    ->   `name_id` AS `Print`,
    ->   `code`,
    ->   `name_en` AS `EN`,
    ->   `name_fr` AS `FR`,
    ->   `name_de` AS `DE`,
    ->   `Id`
    -> FROM `iso639_Language`
    -> WHERE `Id` LIKE 'in%'
    -> ORDER BY `bib`;
+-----+------------------------------------------------------------+------+------------------------------------------------------------+------------------------------------------------+------------------+-----+
| bib | Print                                                      | code | EN                                                         | FR                                             | DE               | Id  |
+-----+------------------------------------------------------------+------+------------------------------------------------------------+------------------------------------------------+------------------+-----+
| ina | Interlingua (International Auxiliary Language Association) | ia   | Interlingua (International Auxiliary Language Association) | interlingua (langue auxiliaire internationale) | Interlingua      | ina |
| ind | Indonesian                                                 | id   | Indonesian                                                 | indonésien                                     | Bahasa Indonesia | ind |
| inh | Ingush                                                     | NULL | Ingush                                                     | ingouche                                       | Inguschisch      | inh |
+-----+------------------------------------------------------------+------+------------------------------------------------------------+------------------------------------------------+------------------+-----+
3 rows in set (0.01 sec)

... становится ...

mysql> SELECT
    ->   `bib`,
    ->   LEFT(`name_id`,15) AS `Print`,
    ->   `code`,
    ->   LEFT(`name_en`,10) AS `EN`,
    ->   LEFT(`name_fr`,10) AS `FR`,
    ->   LEFT(`name_de`,10) AS `DE`,
    ->   `Id`
    -> FROM `iso639_Language`
    -> WHERE `Id` LIKE 'in%'
    -> ORDER BY `bib`;
+-----+-----------------+------+------------+-------------+------------+-----+
| bib | Print           | code | EN         | FR          | DE         | Id  |
+-----+-----------------+------+------------+-------------+------------+-----+
| ina | Interlingua (In | ia   | Interlingu | interlingu  | Interlingu | ina |
| ind | Indonesian      | id   | Indonesian | indonésien  | Bahasa Ind | ind |
| inh | Ingush          | NULL | Ingush     | ingouche    | Inguschisc | inh |
+-----+-----------------+------+------------+-------------+------------+-----+
3 rows in set (0.00 sec)

Мне нравятся \G и pager less -Sinварианты и использовать их.Однако часто мне нужны результаты обычным способом.С опцией пейджера я теряю возможность ссылаться, визуально, на предыдущие результаты, так как выходные данные отображаются выбранной программой, внешне для MySQL, и больше не отображаются, когда эта программа закрыта.С опцией \G я могу легко сравнивать данные каждой записи в целом, но сравнивать записи, такие как просмотр столбца в поисках шаблонов или расхождений, не так просто.

То, что я использовал дляdo удалил некоторые столбцы, пока результаты не уместились в окне, и перезапустил запросы, удалив другие столбцы, и разработал «представление» таблицы в моем представлении.(Не очень хорошее место для хранения таблиц.) Мне редко нужно просматривать весь столбец, однако при использовании MySQL в терминале выборочное сокращение чрезмерно длинного столбца из запроса можно сделать, отредактировав последнюю команду для вставки * 1046.* вокруг обидной колонны, и я вернулся к тому, что мне нужно было сделать, с небольшим отвлечением или потерянным временем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...