0

我是 DB2 的新手。请帮我解决我的问题。

我需要根据条件在 DB2 中触发 sql 查询。就像如果值为“全部”,那么我需要从视图中获取所有数据,但如果值不是数据,则应该基于该值。

例子:

SELECT 
     M.Col1, 
     M.Col2, 
     M.Col3
FROM   
     view M
WHERE 
     M.Col1 = {?param} and
     D.Col2 = '{?paramC}'

现在如果 ?paramC 是 'All' 那么 then 查询应该是

SELECT 
     M.Col1, 
     M.Col2, 
     M.Col3
FROM   
     view M
WHERE 
     M.Col1 = {?param}      // means ?paramC is rejected if All is selected

else
SELECT 
     M.Col1, 
     M.Col2, 
     M.Col3
FROM   
     view M
WHERE 
     M.Col1 = {?param} and
     D.Col2 = '{?paramC}'      // means if ?paramC is some value like 1,2,3 etc

希望我清楚我的问题。我被困在这里。提前致谢。

4

1 回答 1

0
SELECT M.Col1, M.Col2, M.Col3 FROM
view M WHERE M.Col1 = {?param} and (D.Col2 = '{?paramC}' or '{?paramC}' = 'All')
于 2013-11-11T14:14:24.650 回答