如何过滤表中存储为另一个表中的参数的条件?

时间:2015-02-20 16:26:40

标签: sql sql-server parameters filter conditional-statements

我想使用tableA中存储的参数来过滤tableB。

这是我的tableA参数:

parameterstable

我想用或多或少的查询来过滤tableB:

WITH A AS 
    (SELECT 
         [FilterType]
        ,[MaxID]
    FROM TableA
    WHERE [FilterType]=1
    )

SELECT * FROM TableB B
WHERE B.ID>A.MaxID

我想获取TableB中的所有记录,其中B.ID大于从TableA中为FilterType 1选择的MaxID。怎么做?更一般地说,如何从表中获取参数并使用此参数进行查询?

3 个答案:

答案 0 :(得分:3)

SELECT B.*
FROM TableB AS B
JOIN TableA AS A ON B.ID > A.MaxID
WHERE A.FilterType = 1

答案 1 :(得分:2)

这里不是很多细节,但这样的事情呢?

select b.Columns
from TableB b
join TableA a on a.MaxID <= b.ID
where a.FilterType = 1

答案 2 :(得分:1)

  WITH A AS 
    (SELECT 
         [FilterType]
        ,[MaxID]
    FROM TableA
    WHERE [FilterType]=1
    )
SELECT B.* FROM TableB B,A
WHERE B.ID>A.MaxID