我想知道如何查询数据库以选择不属于特定日期的所有记录。在这种情况下,我想选择所有不是星期三的记录。我在MySQL数据库中的日期栏是"日期",例如2012-09-10。
我的"伪"选择如下:
SELECT * FROM mytable WHERE date NOT IN(SELECT* FROM mytable WHERE date = WED)
有人知道正确的语法吗?
您想要的是WEEKDAY()函数。
http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_weekday
2=周三
select *
from mytable
where date >= CURDATE() - INTERVAL 30 DAY and
WEEKDAY(date) <> 2
尝试此查询:
select * from mytable where dayofweek(date)!=4;