MySQL-拉取日期待定的列表

MySQL-拉取日期待定的列表,mysql,sql,unique,Mysql,Sql,Unique,我有一张这样的桌子: ID_____PostingDate_____PosterID -------------------------------- 1______05/01/2012______450 2______06/30/2012______451 3______02/17/2013______451 4______12/10/2012______451 5______06/14/2012______452 6______06/15/2012______452 7______05/01

我有一张这样的桌子:

ID_____PostingDate_____PosterID
--------------------------------
1______05/01/2012______450
2______06/30/2012______451
3______02/17/2013______451
4______12/10/2012______451
5______06/14/2012______452
6______06/15/2012______452
7______05/01/2012______453
8______06/04/2012______453
9______04/05/2013______454
10_____05/05/2013______454
PosterID
--------
450
452
453
WHERE DATE_FORMAT(PostingDate, '%m-%Y') IN ('05-2012', '06-2012')
我正在尝试获取2012年5月或6月发布的所有PosterID的列表,从那以后再也没有发布过

上表中的预期结果:

ID_____PostingDate_____PosterID
--------------------------------
1______05/01/2012______450
2______06/30/2012______451
3______02/17/2013______451
4______12/10/2012______451
5______06/14/2012______452
6______06/15/2012______452
7______05/01/2012______453
8______06/04/2012______453
9______04/05/2013______454
10_____05/05/2013______454
PosterID
--------
450
452
453
WHERE DATE_FORMAT(PostingDate, '%m-%Y') IN ('05-2012', '06-2012')
我试过了:

ID_____PostingDate_____PosterID
--------------------------------
1______05/01/2012______450
2______06/30/2012______451
3______02/17/2013______451
4______12/10/2012______451
5______06/14/2012______452
6______06/15/2012______452
7______05/01/2012______453
8______06/04/2012______453
9______04/05/2013______454
10_____05/05/2013______454
PosterID
--------
450
452
453
WHERE DATE_FORMAT(PostingDate, '%m-%Y') IN ('05-2012', '06-2012')


尽管这两种方法都不接近

请尝试以下方法:

where PostingDate < '2012-7-1' and PostingDate >= '2012-5-1'
其中发布日期<'2012-7-1'和发布日期>='2012-5-1'
试试这个:

SELECT DISTINCT PosterID
FROM table1
WHERE PostingDate BETWEEN '2012-05-01' AND '2012-06-30'
AND posterID NOT IN (SELECT PosterID
  FROM table1
  WHERE PostingDate > '2012-07-01');

@Ken。那不准确。第一个查询告诉您在这两个月内发生了哪些记录。“不在”将从结果中删除“2012-07-01”之后发布的结果。您可以签入SQLFIDLE。如果您删除了不在..中的和posterid。。部分也将返回451。啊-你是对的…我无意中操纵了你发布的公式。跟随你所发布的内容是有效的+我骗了一点就来了。再次感谢您的帖子和后续文章。如果您能在这里提供帮助,我已经为这个问题/这个公式更详细的部分发布了“第二部分”: