Як ВИБІРАТИ з результатів ПОКАЗУВАННЯ ТАБЛИЦІ


36

Я хочу обмежити рядки та стовпці, що повертаються з

SHOW TABLE STATUS

команда в MySQL 5.1. Чи є спосіб отримати цю саму інформацію через SELECTзаяву, щоб я маніпулював результатами нормальним способом?

Відповіді:


33

У ньому більше стовпців, ніж ПОКАЖАТИ СТАТУТ ТАБЛИЦІ; але робить трюк:

SELECT * FROM information_schema.tables WHERE table_schema = DATABASE();

ОНОВЛЕННЯ 2011-06-07 19:02

SELECT table_name,Engine,Version,Row_format,table_rows,Avg_row_length,
Data_length,Max_data_length,Index_length,Data_free,Auto_increment,
Create_time,Update_time,Check_time,table_collation,Checksum,
Create_options,table_comment FROM information_schema.tables
WHERE table_schema = DATABASE();

Ці запити працюють, якщо встановити поточну базу даних.

Ви також можете жорстко кодувати конкретну базу даних:

SELECT table_name,Engine,Version,Row_format,table_rows,Avg_row_length,
Data_length,Max_data_length,Index_length,Data_free,Auto_increment,
Create_time,Update_time,Check_time,table_collation,Checksum,
Create_options,table_comment FROM information_schema.tables
WHERE table_schema = 'mysql';

10
show table status like 'table1';

Ви не можете маніпулювати стовпцями таким чином, але простіше вибрати лише потрібні таблиці та отримати нормальний SHOW TABLE STATUSвихід.


Що обмежує рядки, але не стовпці, правда?
Джек Дуглас

Правильно. Ви не можете маніпулювати стовпцями таким чином, але простіше вибрати лише потрібні таблиці та отримати нормальний вихід SHOW TABLE STATUS.
Джон Л

3

Ви можете використовувати WHERE або LIKE для вибору:

show table status where name='name'; 

2

show table status можна використовувати без вибору поточної бази даних:

show table status from DbName where name='TableName';

Дивіться документацію :

SHOW TABLE STATUS
    [{FROM | IN} db_name]
    [LIKE 'pattern' | WHERE expr]

-2

Ви можете використовувати цей запит для відображення всіх Інформаційних схем.

ВИБІР * ВІД інформації_schema.tables WHERE table_schema = DATABASE ();

або скорочення:

ПОКАЗУЙТЕ ТАБЛИЧНИЙ СТАТУС, ЩО ПОБАВЛЯЄТЬСЯ "tableName"


1
Я не бачу нічого в цій відповіді, що вже не було розміщено в інших відповідях.
ypercubeᵀᴹ
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.