具有多个 LIKE 值的 SHOW TABLES 语句

新手上路,请多包涵
mysql> SHOW TABLES like 'cms';
+--------------+
| Tables_in_tianyan (cms) |
+--------------+
|厘米 |
+--------------+
一组中的 1 行(0.00 秒)

结果

mysql> SHOW TABLES like 'cms' 或 like 'role';
ERROR 1064 (42000):您的 SQL 语法有错误;检查手册...

如何按多个条件过滤?

原文由 mysql_go 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.3k
2 个回答

您需要使用 WHERE 子句。如 文档 中所示,如果使用 --- ,则只能有一个模式,但如果使用 "SHOW TABLES LIKE ..." "SHOW TABLES WHERE ..." 则可以在 WHERE 子句中使用表达式。由于您需要表达式,因此需要使用 WHERE 子句。

 SHOW TABLES
FROM `<yourdbname>`
WHERE
    `Tables_in_<yourdbname>` LIKE '%cms%'
    OR `Tables_in_<yourdbname>` LIKE '%role%';

原文由 Rich Adams 发布,翻译遵循 CC BY-SA 3.0 许可协议

您可以使用普通 SQL WHERE 语句来执行此操作。

 SHOW TABLES WHERE Tables_in_tianyan LIKE '%cms%'

原文由 Michael Low 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题