假设我有一个这样的表:SQL:显示栏只有当有数据在它
name | age | experience
abc | 18 | 0
def | 19 | 0
efg | 20 | 0
我要选择经验栏只有当任何一个值大于零。 在这种情况下,我的SQL
查询应该只返回名称和年龄而不是经验。
如果让我们说“efg”的经验大于0,那么查询应该返回姓名,年龄和经验。 我试过以下查询
SELECT EXISTS (SELECT name,age,experience FROM emp_info)
AND NOT
EXISTS (SELECT experience FROM emp_info WHERE experience=0);
但它不工作。
提供更好的例子。 –
它不起作用?另外,有点困惑...如果经验> 0,那么只有选择经验栏?或者你的意思是,如果经验<= 0,然后选择其他2列,所以体验只显示在> 0的位置? – David
您使用MySQL或MS SQL Server或Oracle吗?不要标记不涉及的产品。 – jarlh