如何从join表中选择max表?

628mspwn  于 2021-06-17  发布在  Mysql
关注(0)|答案(5)|浏览(295)

大家好,我有table的名字 posts 另一个表的名称是 counttbl 在我的 post 表中没有列名

postid(primarykey), postdetails, postdate(timestamp)

而且在 counttbl 有3列是

id(primarykey), postid,countnumber

我想从中选择那个职位 counttbl 哪个有 maximumnumber 伯爵阁下,
例句:在邮递桌上,我有

postid = 1, postdetails = details1, date = 29:11:00 00:00:00

在计数中有 postid = 1 , countnumber = 4 ,和 postid = 2 , countnumber = 3 然后我想选择一个有 maximumber 计数数字并使用join显示发布详细信息。
我是新来的,帮帮我吧

2eafrhcq

2eafrhcq1#

请使用以下查询:

SELECT MAX(cnt.countnumber), cnt.postid
FROM counttbl as cnt
JOIN post as pst ON cnt.postid = pst.id

我给出了表名:
表名: post and counttbl

yizd12fk

yizd12fk2#

这句话会给你想要的结果。我将表和字段命名为differen,因为可能与sql中的保留字冲突。

SELECT * FROM 
(
  SELECT counts.postid, counts.counts 
  FROM counts 
  WHERE counts.counts = (SELECT max(counts) FROM counts) 
) tempcounts 
INNER JOIN posts ON posts.postid = tempcounts.postid 
ORDER BY posts.postdate DESC limit 0,1

如果更多的职位有相同的计数,他们都将在结果中

kb5ga3dv

kb5ga3dv3#

你可以在下面试试

select * from posts p 
inner join 
(
  select postid, max(countnumber) from counttbl group by postid
) as p1
on p.postid=p1.postid
3vpjnl9f

3vpjnl9f4#

试试这个:

select * from post where postid in (select postid from counttbl having max(countnumber));
raogr8fs

raogr8fs5#

试试这个
从post\u id所在的posts中选择*from posts(从countble中选择max(countnumber))

相关问题