Sql 将视图表/列跟踪回系统表
我正在尝试获取有关系统视图表/列从系统表获取信息的位置的信息。有没有办法找出视图表/列来自哪个系统表?我有这个sql来获取视图表和列信息。当我试图获取系统表信息时,我得到了大量的数据,这些数据非常接近,但信息非常多。任何帮助都将不胜感激。我环顾四周,有一些问题与此相近,但没有找到有帮助的东西 -这将获取视图表/列信息Sql 将视图表/列跟踪回系统表,sql,sql-server-2008,Sql,Sql Server 2008,我正在尝试获取有关系统视图表/列从系统表获取信息的位置的信息。有没有办法找出视图表/列来自哪个系统表?我有这个sql来获取视图表和列信息。当我试图获取系统表信息时,我得到了大量的数据,这些数据非常接近,但信息非常多。任何帮助都将不胜感激。我环顾四周,有一些问题与此相近,但没有找到有帮助的东西 -这将获取视图表/列信息 SELECT A.NAME AS 'VIEW_TABLE_NAME' , D.NAME AS 'VIEW_COLUMN_NAME' , CASE WHEN
SELECT
A.NAME AS 'VIEW_TABLE_NAME'
, D.NAME AS 'VIEW_COLUMN_NAME'
, CASE WHEN D.IS_NULLABLE = 0 THEN 'NO' ELSE 'YES' END AS NULLABLE
FROM
SYS.VIEWS A
LEFT JOIN
SYS.SCHEMAS C ON A.SCHEMA_ID = C.SCHEMA_ID
LEFT JOIN
SYS.COLUMNS D ON D.OBJECT_ID = A.OBJECT_ID
WHERE
A.NAME LIKE 'QL%'
ORDER BY
A.NAME, D.NAME, D.IS_NULLABLE
当我在系统表中添加时,我得到了太多的信息
SELECT
A.NAME AS 'VIEW_TABLE_NAME', D.NAME AS 'VIEW_COLUMN_NAME'
, CASE WHEN D.IS_NULLABLE = 0 THEN 'NO' ELSE 'YES' END AS NULLABLE
, T.NAME AS 'TABLE_NAME'
FROM
SYS.TABLES T
LEFT JOIN
SYS.VIEWS A ON A.SCHEMA_ID = T.SCHEMA_ID
LEFT JOIN
SYS.SCHEMAS C ON A.SCHEMA_ID = C.SCHEMA_ID
LEFT JOIN
SYS.COLUMNS D ON D.OBJECT_ID = A.OBJECT_ID --AND D.OBJECT_ID = T.OBJECT_ID
WHERE
A.NAME LIKE 'QL%'
GROUP BY
A.NAME, D.NAME, D.IS_NULLABLE, T.NAME
ORDER BY
A.NAME
谢谢你的帮助喜欢这里吗?@marc_s-谢谢你的回复。我尝试了它所说的,但我没有得到我正在寻找的信息。我在示例中的sql语句中尝试了它所说的操作。它不起作用。我没有获取引用id的选项。不知道如何从上面的sql中获取该选项。关于如何将其添加到上面的代码中,有什么想法吗?