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


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.