1
我的表結構爲:形式的Mysql加入
SELECT * FROM `MYTABLE` WHERE `USERID` = 148 ORDER BY `TABLEDATE` DESC;
ID USERID STATE_ID TABLEDATE
96 148 13 2013-01-08 06:11:34
554 148 3 2013-01-03 04:46:08
25 148 2 2013-01-02 04:46:07
我想秒錶用戶最高的入門「MYTABLE」(=>爲了通過STATE_ID DESC限制1,1),其日期最後一個條目是日期「2013年1月8日」。
我試圖組成查詢但失敗。請幫忙?
SELECT F1.USERID,
MAX(F2.TABLEDATE),
F2.STATE_ID
FROM MYTABLE F1
JOIN MYTABLE F2 ON F1.USERID = F2.USERID WHERE
F1.STATE_ID = 13 AND
F2.TABLEDATE < F1.TABLEDATE AND
F1.TABLEDATE <= '2013-01-08 23:59:59' AND
F1.TABLEDATE >= '2013-01-08 00:00:00'
GROUP BY F1.USERID
輸出
148 2013-01-03 04:46:08 2
預計輸出
148 2013-01-03 04:46:08 3
子 - 查詢不好,請建議b你加入 – 2013-02-14 09:12:33
@SheldonCooper - 我真的不知道如何使用連接來做到這一點。但是,爲什麼不子查詢?他們並不總是不好。另外,如果子查詢是做你想做什麼的唯一方法呢? – 2013-02-14 09:16:03
Wherez日期條件? – 2013-02-14 09:38:01