0

例如,如果我有这样的表

----------------------
| id     | year      |
----------------------
| 1      | 01-JAN-95 |
| 2      | 01-JAN-96 |
| 3      | 01-JAN-97 |
| 4      | 02-JAN-97 |
| 5      | 03-JAN-97 |
----------------------

...我想选择不是 1997 年的所有内容,我该怎么做?

我知道我可以做到:

SELECT * FROM table WHERE year not like '%97';

但是有没有更有效的方法?

4

2 回答 2

2

如果你的桌子很大,你可能想试试这个:

SELECT * FROM yourtable
WHERE datecol < '1997-01-01'
OR datecol >= '1998-01-01';
于 2012-07-14T07:32:09.190 回答
1

SELECT * FROM table WHERE YEAR(year) <> '1997'

// 固定逻辑

于 2012-07-14T07:31:03.873 回答