sql - 如何在数据块中显示与某些字符串匹配的表
问题描述
使用
SHOW TABLES in mydatabase
给了我所有包含表的列表。像
+----------+-----------+----------+
| database | tableName | comment |
+----------+------------+---------+
| db1 | table1 | null |
| db1 | table2 | null |
| db1 | table_trkw | null | |
我只想获取包含特定字符串的表,例如“ trkw ”
使用时
SHOW TABLES in db1 WHERE tableName IN ('%trkw%');
或者
SHOW TABLES in db1 WHERE tableName LIKE '%trkw%';
我不断收到同样的错误:
Error in SQL statement: ParseException: mismatched input WHERE' expecting <EOF>
我只是不明白 WHERE 条件有什么问题。是因为 WHERE 条件不能在数据库上使用,而只能在其表上使用?
如何过滤包含“ trkw ”的表?
解决方案
试试这个:
SHOW TABLES FROM mydatabase LIKE '*trkw*'
推荐阅读
- powerbi - 如何使用 M 语言从现有表创建聚合表
- puppet - 在 puppet 中进行两个字符串操作
- r - 在 R 中明智地添加一堆类似的数据框单元格的优雅方法?
- javascript - 拦截提交不起作用
- python - 获取 WinError 5 访问被拒绝
- php - Laravel 5.4 更新方法
- angular - setTimeOut() 在 Angular Lifecycle Hooks 中重复:ngDoCheck、ngAfterContentChecked、ngAfterViewChecked
- react-native - React Native 在函数内部调用 this.setState
- c# - 使用异步 InjectionFactory
- pytorch - PyTorch python 与 C++ 的绑定在哪里?