查询与验证if表是否存在

时间:2012-05-12 14:30:06

标签: mysql

我有表table_

的表v_c_country

我可以进行查询,结果是列table_names中的所有表的列表。一般来说,这意味着。我有它作为另一个查询的源。 但是当table_names列表与原始存在表f.ex的列表不同时的情况是什么。来自information_schema.tables? (例如,我们准备了将来会创建的表格信息。)

如何在表v_c_country上进行查询,结果是table_names列表,但用f.ex验证。 INFORMATION_SCHEMA.TABLES? (仅列出实际现有表的名称) 例如。

2 个答案:

答案 0 :(得分:1)

select c.table_name from v_c_country c
inner join INFORMATION_SCHEMA.TABLES i on i.TABLE_NAME = c.table_name

答案 1 :(得分:1)

以下是两种等效方法:

select *
from v_c_country c join
     information_schema.tables t
     on c.table_name = t.table_name

select *
from v_c_country c
where c.table_name in (select table_name from information_schema.tables t)