如何在另一个select语句中使用查询结果?

时间:2011-10-11 05:08:35

标签: sql tsql sybase

我有一个表A,它包含10行和3列。其中一列是name,这些是表名。

我写了一个查询

select name from A

现在我想在其他查询中使用所有10个名称(作为表名)的值。我该如何在Sybase中执行此操作?

1 个答案:

答案 0 :(得分:2)

您可以将结果集用于JOIN

SELECT [B].*
FROM [B]
    INNER JOIN (SELECT [Name] FROM [A]) aliasA
    ON [B].[Name] = aliasA.[Name]

或者您可以使用WHERE

的结果集
SELECT [B].*
FROM [B]
WHERE [B].[Name] IN 
    (SELECT [Name] FROM [A])

您还可以通过其他各种方式使用它。在大多数情况下,您可以将结果集视为表格 - 从中​​进行选择,与其结合等等。