mysql - 查询从数据库中选择所有表而不是物化 View

标签 mysql sql oracle

我正在使用查询从数据库中选择所有表

select table_name from all_tables where owner='XYZ' order by table_name

但上面的查询也返回物化 View 。如何只获取表而不获取物化 View

最佳答案

你可以忽略物化 View 和它们的日志表(如果它们存在的话)

select *
  from all_tables t
 where owner = user
   and (owner, table_name) not in (select owner, mview_name
                                     from all_mviews l
                                   union all
                                   select log_owner, log_table
                                     from all_mview_logs)

关于mysql - 查询从数据库中选择所有表而不是物化 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14485949/

相关文章:

mysql - MySQL数据库中SHOW TABLE STATUS的 `engine`列中的NULL是什么意思?

mysql - 如何在MySQL中从子存储过程返回更新的行数给父存储过程?

SQL Pivot函数获取top notes字段

SQL - 如果有条件,我如何返回失败订单的数量?

oracle - 如何在oracle中交换表名

php - 复制行,丢失 NULL 值

mysql - MySQL 中的所有行对其他用户不可见

返回的每一行的 MySQL 子查询循环

java - java中oracle查询性能

python - pyodbc:带有包含日期​​范围的 WHERE 子句的 ORACLE SQL 语句