как выбрать максимальную таблицу из таблицы соединений? - PullRequest
0 голосов
/ 29 ноября 2018

Здравствуйте, ребята, у меня есть имя таблицы 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.

Я новичок в этом, так что помогите мне

Ответы [ 5 ]

0 голосов
/ 29 ноября 2018

Пожалуйста, используйте ниже запрос:

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

Я дал имя таблицы:

Имя таблицы: post and counttbl

0 голосов
/ 29 ноября 2018

попробуйте

выбрать * из сообщений ГДЕ post_id IN (выберите MAX (число) из счета)

0 голосов
/ 29 ноября 2018

Это утверждение даст вам желаемый результат.Я назвал таблицы и поля разными из-за возможных конфликтов с зарезервированными словами в 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

Если больше постов имеют одинаковое количество, они все будут в результате

0 голосов
/ 29 ноября 2018

попробуйте это:

select * from post where postid in (select postid from counttbl having max(countnumber));
0 голосов
/ 29 ноября 2018

Вы можете попробовать ниже

select * from posts p 
inner join 
(
  select postid, max(countnumber) from counttbl group by postid
) as p1
on p.postid=p1.postid
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...