sql查询没有执行

时间:2010-06-10 11:32:01

标签: java sql

无法执行查询,我需要在以下查询中检查结束日期是否大于今天

获取错误无效查询

select * from table1 where user in  ('a') and END_DATE >'2010-05-22'

获取错误升字符串

4 个答案:

答案 0 :(得分:3)

您不能使用WHERE两次。 它应该是

SELECT * FROM table1 WHERE user in ('a') AND END_DATE >'2010-05-22'

此外,如果您想检查END_DATE是否大于今天,请使用

SELECT * FROM table1 WHERE user in ('a') AND END_DATE > CURDATE()

答案 1 :(得分:2)

您的查询包含两个WHERE子句,如果您需要合并两个或多个谓词,则必须使用ANDOR个组合。

select * from table1 where user in ('a') and END_DATE >'2010-05-22'

答案 2 :(得分:1)

多个条件由AND或OR连接,而不是多个WHERE

select * 
  from table1 
 where user in ('a') 
   AND END_DATE >'2010-05-22'

答案 3 :(得分:0)

您的where子句检查以下内容:

user in ('a')

相同
user = 'a'

您必须添加通配符以检查用户名是否包含a,或以其开头。 我认为通配符取决于你的数据库(不知道它们到处都是一样的)

这不是你的问题,只是为了避免进一步的问题。