SHOW TABLES с несколькими значениями LIKE
mysql> SHOW TABLES like 'cms';
+-------------------------+
| Tables_in_tianyan (cms) |
+-------------------------+
| cms |
+-------------------------+
1 row in set (0.00 sec)
Результат
mysql> SHOW TABLES like 'cms' or like 'role';
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual...
Как фильтровать по нескольким условиям?
Ответы
Ответ 1
Вам нужно использовать предложение WHERE
. Как показано в docs, вы можете иметь только один шаблон, если используете "SHOW TABLES LIKE ..."
, но вы можете использовать выражение в предложении WHERE, если вы используете "SHOW TABLES WHERE ..."
. Поскольку вам нужно выражение, вам нужно использовать предложение WHERE
.
SHOW TABLES
FROM `<yourdbname>`
WHERE
`Tables_in_<yourdbname>` LIKE '%cms%'
OR `Tables_in_<yourdbname>` LIKE '%role%';
Ответ 2
Для этого вы можете просто использовать обычный SQL WHERE
.
SHOW TABLES WHERE Tables_in_tianyan LIKE '%cms%'
Ответ 3
show tables from mydb
where
Tables_in_mydb like '%statistics%'
or Tables_in_mydb like '%device%';
Ответ 4
Вы берете таблицу, используя приведенный ниже код
select TABLE_NAME from information_schema.TABLES where TABLE_SCHEMA = 'database_name'
Надеюсь, это поможет вам.