数据库
首页 > 数据库> > MySQL中的按查询分组不能正常工作

MySQL中的按查询分组不能正常工作

作者:互联网

我查询从三个不同的表中查找最后24个结果.

查询是:

SELECT m.MovID,m.Type,m.Image,m.Date,t.SerID,t.Type,t.Image,t.Date,g.GamID,g.Type,g.Image,g.Date
FROM movie m, tvseries t, games g
GROUP BY m.MovID, t.SerID, g.GamID
LIMIT  0,24

但此查询的结果是by不起作用.

解决方法:

GROUP BY不是问题(至少不是主要问题).

真正的问题是,您从3个表中选择数据而没有加入它们.查询的这一部分:

from   movie m
       , tvseries t
       , games g 

表示第一张表的每一行与第二张表的每一行与第三张表的每一行的所有组合.那是你要的吗?

FROM   movie m
  CROSS JOIN  tvseries t
  CROSS JOIN  games g 

您很可能想加入3个表:

FROM   movie m
  INNER JOIN  tvseries t
    ON  t.someColumn = m.someColumn 
  INNER JOIN  games g 
    ON  g.someOtherColumn = m.someOtherColumn 

标签:mysql,group-by
来源: https://codeday.me/bug/20191201/2083148.html