1
這裏的背景,我有一個表object
包含:MySQL的循環每一行對應一個有效的用戶
- ID
- 用戶(ID從用戶表)
- 日期(日期)
- 狀態(0 | 1)
和含有另一個表user
:
- ID
- 狀態(0 | 1)
EX:
Object
ID | USER | DATE | STATE
1 1 2012-10-01 1
2 2 2012-08-01 1
3 3 2012-10-01 1
4 3 2012-10-02 1
5 3 2012-09-01 1
6 3 2012-10-01 1
7 1 2012-10-02 1
8 2 2012-10-02 0
9 2 2012-10-02 1
10 1 2012-10-01 1
11 2 2012-10-01 1
12 3 2012-10-01 0
13 4 2012-11-11 1
Users
ID | STATE
1 | 1
2 | 1
3 | 1
4 | 0
我將作出請求顯示每有效狀態週期性用戶一個對象,如果對象狀態處於活動狀態,按日期排序DESC。
EX。結果:
ID | USER | DATE | STATE
10 1 2012-11-01 1
9 2 2012-10-02 1
4 3 2012-10-02 1
7 1 2012-10-02 1
11 2 2012-10-01 1
3 3 2012-10-01 1
1 1 2012-10-01 1
2 2 2012-08-01 1
6 3 2012-10-01 1
5 3 2012-09-01 1
我可以做簡單的查詢,但後來我承認不知道該怎麼做。
編輯2012年11月22日: 我們嘗試其他計算策略......有了這個查詢(感謝米歇爾麪包車Vaardegem),我有一個用戶列表,以便我想......在一個有新鮮感對象在上面。
SELECT o.user
FROM object o
INNER JOIN users ON user.id = o.user
WHERE o.state=1 AND users.state=1
GROUP BY o.user
ORDER BY o.date DESC
結果是:
USER
1
2
3
新問題計算策略: 隨着IDS的這份名單中,行可能計算次數,和用戶定義的增值經銷商,你覺得有什麼可以做的?
例:
- 假設這個名單,SELECT * FROM對象,其中在這裏用戶 ($ thislist)和國家= 1個ORDER BY日期DESC
- 對於根據用戶的每一個對象行(我不知道怎麼在mysql中講解) 遞增一個級別變種與userposition(循環)+ USERCOUNT位
- ORDER BY級別限制N,X日在結果
我whant排名我的對象在用戶循環,如:
object from user 1,2,3,1,2,3,1,3,3,1,1,1,1,1,1,1,1,etc... if exist
做這個新的計算策略算法中是一個MySQL查詢實現的,如果可能的話那該是多麼的......很好的問題?
任何人都可以在MySQL中看到解決方案嗎?
在此先感謝
是的正確,但在一個循環客戶端1,2,3,1,2,3,1,2,3,1,1,1等...我會在幾分鐘內嘗試你的查詢;)謝謝 – luca
啊我的不好,這個查詢返回第一個用戶1的所有記錄,然後爲用戶2等 –
我確認後嘗試,在所有情況下,非常感謝;) – luca