需要您的帮助:需要为每个客户选择最后三条评论并将其插入列中。所以,输入看起来像这样:
ID| Client_ID| Comment_Date| Comments|
1| 1| 29-Apr-13| d|
2| 1| 30-Apr-13| dd|
3| 1| 01-May-13| ddd|
4| 1| 03-May-13| dddd|
5| 2| 02-May-13| a|
6| 2| 04-May-13| aa|
7| 2| 06-May-13| aaa|
8| 3| 03-May-13| b|
9| 3| 06-May-13| bb|
10| 4| 01-May-13| c|
我需要获得的输出如下:
Client_ID| Last comment| (Last-1) comment| (Last-2) comment|
1| dddd| ddd| dd|
2| aaa| aa| a|
3| bb| b|
4| c|
请帮助!!
答案 0 :(得分:0)
SELECT x.*
FROM my_table x
JOIN my_table y
ON y.client_id = x.client_id
AND y.id >= x.id
GROUP
BY x.client_id
, x.id
HAVING COUNT(*) <=3;
答案 1 :(得分:-1)
如果不认为你可以通过SQL请求得到它。也许你可以,但我认为用PHP更容易。例如,您可以通过此请求获得评论:
SELECT * FROM Comment
WHERE Client_ID = ?
LIMIT 0,3
ORDER BY Date DESC
它将返回用户的最后三条评论。然后,你可以随心所欲地做任何事情!
希望它会有所帮助。