我有一个带有左联接的sql查询:
SELECT i.id
, i.user_id
, i.date
, h.cat_id
FROM io__image i
LEFT
JOIN io__image_cat_hext h
ON h.image_id = i.id
WHERE i.home_granted >= 1
AND user_id = 40
ORDER
BY i.date DESC
结果如下:
id user_id date cat_id
530 40 2018-05-12 20:45:54 42
528 40 2018-05-11 22:59:17 42
518 40 2018-05-11 17:22:30 42
508 40 2018-05-09 13:45:40 37
504 40 2018-05-06 22:40:31 37
492 40 2018-05-02 21:21:20 37
490 40 2018-05-02 16:16:09 36
481 40 2018-05-02 15:08:35 36
有可能得到不同的分类号吗?我试过分组方式:
SELECT i.id
, i.user_id
, i.date
, h.cat_id
FROM io__image i
GROUP
BY h.cat_id
LEFT
JOIN io__image_cat_hext h
ON h.image_id = i.id
WHERE i.home_granted >= 1
AND user_id = 40
ORDER
BY i.date DESC
但我有个错误:
第4行的“left join io\uu image\u cat\u hext on io\uu image\u cat\u hext.image\u id=io\uu image.id wher”附近的语法
2条答案
按热度按时间bjp0bcyl1#
很难理解你的确切意思
DISTINCT cat_id
在这种情况下。也许你在找这样的东西?它只会为每个类别提供id最高的图像。如果id是自动递增的,那就是最近插入的图像。
2guxujil2#
如果你只想要
cat_id
值,则可以执行以下操作:没有显示你想要的结果,这似乎是最适合你的问题。