我正在尝试根据字段中的文本是否包含子字符串从Access 2010查询中选择记录。但是,如果子字符串不存在,则应返回查询中的所有行。
例如,给出以下记录:
User Fruit
---- -----
Fred Apple
George Banana
Mary Apple
Mike Pear
John Pear
如果在SQL WHERE子句中指定'Apple',我希望返回的记录为:
User Fruit
---- -----
Fred Apple
Mary Apple
如果SQL WHERE子句中未指定'Apple',我希望返回的记录为:
User Fruit
---- -----
George Banana
Mike Pear
John Pear
这似乎是一个如此简单的查询,并且更喜欢将标准应用于单个字段(即Fruit),因为实际查询非常复杂。但是,我只是不能让它做一个独家的,即一个或另一个,但不是两个。
此致
答案 0 :(得分:0)
那样的东西?
IF EXISTS (SELECT * FROM Table WHERE Fruit='Apple') THEN
SELECT * FROM Table WHERE Fruit='Apple'
ELSE
SELECT * FROM Table WHERE Fruit!='Apple'
END IF
答案 1 :(得分:0)
我想这样的东西:
SELECT * FROM TABLE
WHERE FRUIT = 'Apple' OR 0 = (SELECT COUNT(1) FROM TABLE WHERE FRUIT = 'Apple')