2016-04-04 21 views
0

我有一个问题,我不知道它是否有可能解决..我打破了我的想法,并没有发现一个解决方案..MySQL - 选择仅注册如果它的第一次用户

我有一个表和我选择新的寄存器,我没有选择管理员已经登录上次。

没问题。

有了这个“新登记册”,我送了一份礼物。

但只有当它在我的网站上的用户的第一次。

(该表是一个培训表 - 用户上课 - 注册您的参与 - 如果您是第一次 - 我发送了一个欢迎工具包,如果他是返回用户,我不会再次发送工具包)

教训是不连续的(你可以做第2课第一)

============================

USERID课时

222 2 2016年4月1日

122 1 2016年4月1日

122 3二〇一五年十月二十日

在此表中我选择具有TIME = 2016年4月1日(最后寄存器)

===所有用户=========================

USERID课时

222 2 2016年4月1日

122 1 2016 -04-01

但.. USERID 122已经在去年的另一个教训(和收到欢迎工具包)

然后,回答是:(仅222是一个 “真正的新的” 用户)

=== =========================

USERID | LESSON | TIME

222 | 2 | 2016-04-01

谢谢!!

回答

0

您可以使用NOT EXISTS此:

SELECT USERID, LESSON_TIME 
FROM REGISTERS AS r1 
WHERE LESSON_TIME = '2016-04-01' AND 
     NOT EXISTS (SELECT * 
        FROM REGISTERS AS r2 
        WHERE r1.USERID = r2.USERID AND 
         r2.LESSON_TIME < r1.LESSON_TIME) 
+0

喜@ Giorgos-Betsos!首先tks为您的时间和帮助..嗡嗡声..我认为这是一个伟大和优雅的解决方案的问题..我会在这里测试! (我的决赛桌比这个有点复杂 - 但我认为这个概念是一样的.. – DANIEL

相关问题