我的数据库中有一种元数据表,我想对旧记录进行筛选。我已经创建了一个"select“语句,该语句选择要删除的行:
select m.tablename, m.OWNERNAME
from MAPINFO.MAPINFO_MAPCATALOG m
left outer join sys.ALL_TABLES t
on TRIM(m.tablename) = t.TABLE_NAME and TRIM(m.OWNERNAME) = t.owner
where t.num_rows is null这给了我113行。
但是,我不知道如何将其转换为“删除”。我正要用:
delete from MAPINFO.MAPINFO_MAPCATALOG where tablename in (...)但这会删除115行。有两个问题:
鉴于以上所述,我应该如何执行此删除?
发布于 2012-06-15 15:52:04
你可以这样做:
delete from MAPINFO.MAPINFO_MAPCATALOG where (tablename, ownername) in (...)https://stackoverflow.com/questions/11053956
复制相似问题