注册

在查询表元数据时候,如果不同模式下存在相同表名称,会导致列重复问题

长路 2024/03/26 672 1 已解决

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:8
【操作系统】:window11
【CPU】:
【问题描述】*:在知道模式名和表名情况下,查询表中所有列的元数据,但是在不同的模式中,如果存在相同的表名称,则会导致出现重复的列元数据,这种情况怎么解决,下面是我的sql

SELECT A.*,B.*,CASE WHEN C.COLUMN_NAME IS NOT NULL THEN 'Y' ELSE 'N' END AS IS_PRIMARY_KEY, E.INFO2 FROM SYS.USER_TAB_COLUMNS A LEFT JOIN SYS.USER_COL_COMMENTS B ON A.TABLE_NAME = B.TABLE_NAME AND A.COLUMN_NAME = B.COLUMN_NAME LEFT JOIN ( SELECT COLUMN_NAME FROM USER_CONS_COLUMNS WHERE CONSTRAINT_NAME IN ( SELECT CONSTRAINT_NAME FROM SYS.USER_CONSTRAINTS WHERE CONSTRAINT_TYPE = 'P' AND TABLE_NAME = '表名' ) )C ON A.COLUMN_NAME = C.COLUMN_NAME JOIN SYSOBJECTS D ON A.TABLE_NAME = D.NAME JOIN SYS.SYSCOLUMNS E ON D.ID = E.ID AND A.COLUMN_NAME = E.NAME WHERE A.TABLE_NAME = '表名' AND B.OWNER = '模式名';
回答 0
暂无回答
扫一扫
联系客服