那么,我有三个不同的表(下面检查)。我想让我可以看到,这是保存每个类别的最新图像(req_image_1等),这是不是父(cat_parent = 0)选择行的最大值为
一个表,其中包含有关请求的一般信息
+----+--------------------------+------------+
| id | req_name | req_parent |
+----+--------------------------+------------+
| 3 | Send pack | 19 |
| 4 | Go Visit | 18 |
| 5 | Stop by | 19 |
| 6 | Deliver cookies | 34 |
+----+--------------------------+------------+
二表,其中包含有关请求的
+----------+------------+------------+----------------------------+
| umeta_id | request_id | meta_key | meta_value |
+----------+------------+------------+----------------------------+
| 1 | 3 | req_city | London |
| 2 | 3 | req_street | 11 Baker street |
| 3 | 3 | req_img_1 | a1c8f69edb37bf6c6.jpg |
| 4 | 4 | req_city | Manchester |
| 5 | 4 | req_street | 71 Main street |
| 6 | 4 | req_img_2 | a71f4160d7f7f7555.jpg |
| 7 | 5 | req_city | Sheffield |
| 8 | 5 | req_street | 240 Duke street |
| 9 | 6 | req_city | Manchester |
| 10 | 6 | req_street | 13 Chapel street |
| 11 | 6 | req_img_1 | 854b9faaa53d8fe02.jpg |
+----------+------------+------------+----------------------------+
三表的元信息,其中包含有关类别的信息
+----+------------------------+------------+
| ID | cat_name | cat_parent |
+----+------------------------+------------+
| 1 | Category_01 | 0 |
| 6 | Category_02 | 0 |
| 18 | Category_01_01 | 1 |
| 19 | Category_01_02 | 1 |
| 34 | Category_02_01 | 6 |
+----+------------------------+------------+
到目前为止,我管理,我能得到的所有图像为每个类别与此查询:
SELECT cat.cat_parent AS category, req.ID, meta.meta_value AS image
FROM d_requests req
LEFT JOIN d_requests_meta meta ON (req.ID = meta.request_id)
LEFT JOIN d_categories cat ON (req.req_parent = cat.ID)
WHERE meta.meta_key LIKE 'req_img_%'
我得到了这样的结果:
+------------+----+-----------------------+
| category | ID | image |
+------------+----+-----------------------+
| 1 | 3 | a1c8f69edb37bf6c6.jpg |
| 1 | 4 | a71f4160d7f7f7555.jpg |
| 6 | 6 | 854b9faaa53d8fe02.jpg |
+------------+----+-----------------------+
但是我想作的提高,所以我会只得到结果,其中每个类别只有一个图像对,例如类别1,有图像a71f4160d7f7f7555.jpg和类别6有图像854b9faaa53d8fe02.jpg
我敢打赌,我错过了一些基本的知识,简单的恩汉子查询和选择MAX的水泥将成为一种魅力。
谢谢!
我完全没有时间给出完整答案,但是看起来你得到了一个[tag:most-n-per-group]问题。看看这里:http://stackoverflow.com/a/7745635/570191 –