【发布时间】:2016-07-29 09:02:31
【问题描述】:
我有 SQL Server 数据库查询:-
SELECT DISTINCT
info.COLUMN_NAME AS NAME,
info.TABLE_SCHEMA AS TABLESCHEMA,
info.TABLE_NAME AS TABLENAME,
info.ORDINAL_POSITION AS POSITION,
info.IS_NULLABLE AS ISNULLABLE,
info.DATA_TYPE AS DATATYPE,
tc.CONSTRAINT_TYPE AS CONSTRAINTTYPE,
kcufk.TABLE_SCHEMA AS REFRENCESCHEMA,
kcufk.TABLE_NAME AS REFRENCETABLE,
kcufk.COLUMN_NAME AS REFRENCECOLUMN
FROM INFORMATION_SCHEMA.COLUMNS info
LEFT OUTER JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE kcu
ON kcu.COLUMN_NAME = info.COLUMN_NAME
AND kcu.TABLE_NAME = info.TABLE_NAME
LEFT OUTER JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS tc
ON tc.CONSTRAINT_NAME = kcu.CONSTRAINT_NAME
AND tc.TABLE_NAME = kcu.TABLE_NAME
LEFT OUTER JOIN INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS rk
ON rk.CONSTRAINT_NAME = tc.CONSTRAINT_NAME
LEFT OUTER JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE kcufk
ON kcufk.CONSTRAINT_NAME = rk.UNIQUE_CONSTRAINT_NAME
WHERE info.TABLE_NAME = 'Category'
AND info.TABLE_SCHEMA = 'core'
ORDER BY info.ORDINAL_POSITION ASC;
如何将此 SQL Server 查询转换为 Oracle 查询?
【问题讨论】:
-
你试过了吗?你有什么问题?
-
@Aleksej:- 是的,我试过了。问题是行多次出现。
-
它们是否在 SQL Server 中多次出现?你的数据一样吗?
-
@Matt No in Sql Server 完美实现.. 我只在 oracle 数据库中面临的问题 & 两个数据库中的数据相同..
-
你有很多空值吗?
标签: oracle oracle11g oracle-sqldeveloper oracle-xe