获得最后9次出现

Ann*_*lee 1 mysql sql

我使用MySQL 5.0.12,我有下表:

| post_id | price | created_at          |
|---------|-------|---------------------|
| 10      | 3.5   | 2018-06-18 07:36:34 |
| 11      | 4.8   | 2018-06-17 07:36:34 |
| 10      | 5     | 2018-06-16 07:36:34 |
| 10      | 5     | 2018-06-15 07:36:34 |
| 6       | 3.6   | 2018-06-12 07:36:34 |
| 10      | 2     | 2018-06-14 07:36:34 |
| 10      | 6     | 2018-06-13 07:36:34 |
| 10      | 9     | 2018-06-12 07:36:34 |
| 10      | 4     | 2018-06-11 07:36:34 |
| 10      | 3.6   | 2018-06-09 07:36:34 |
Run Code Online (Sandbox Code Playgroud)

如你所见,我有8次post_id 10.

因此,我希望从今天的日期开始最后6次.

| post_id | price | created_at          |
|---------|-------|---------------------|
| 10      | 3.5   | 2018-06-18 07:36:34 |
| 10      | 5     | 2018-06-16 07:36:34 |
| 10      | 5     | 2018-06-15 07:36:34 |
| 10      | 2     | 2018-06-14 07:36:34 |
| 10      | 6     | 2018-06-13 07:36:34 |
| 10      | 9     | 2018-06-12 07:36:34 |
Run Code Online (Sandbox Code Playgroud)

我知道如何选择正确的post_id,但我正在努力从今天的日期中选择最后6次:

SELECT * FROM product where post_id = 10 
Run Code Online (Sandbox Code Playgroud)

有关如何从今天的日期获得最后6次事件的任何建议吗?

Ale*_*shy 5

你会这样做:

SELECT * FROM product 
WHERE post_id = 10 
ORDER BY created_at DESC 
LIMIT 6
Run Code Online (Sandbox Code Playgroud)

您按日期降序排序,这样您就可以获得最新的日期.并且你限制为6,所以你只能得到你正在寻找的6.