我是新来的SQL和工作的SELECT语句,应该返回一个表结果如下文档。目标是针对存在的每个ThreadID返回一个表,并且具有匹配被查询的CatID的CatID,然后筛选结果/限制结果,以便只返回最近的帖子并返回基于排序结果的创建日期:SQL内部连接限制结果在哪里ID独特和日期大多数最近
日期创建日期修改,以使其更明显我希望每个可能的行返回的最新日期(最新的日期其中CatID = 1)如果数据存在一张表我可以写这个我认为,但这显然超出了我的理解。
╔══════════╔══════════╦═══════════════╦════════╦═════════════╗
║ CatID ║ ThreadID ║ ThreadTitle ║ PostID ║ DateCreated ║
╠══════════╬══════════╬═══════════════╬════════╬═════════════╣
║ 4 ║ 7 ║ Title A ║ 12 ║ most recent ║
║ 4 ║ 6 ║ Title B ║ 6 ║ most recent ║
║ 4 ║ 12 ║ Title C ║ 45 ║ most recent ║
║ 4 ║ 3 ║ Title D ║ 2 ║ most recent ║
╚══════════╩══════════╩═══════════════╩════════╩═════════════╝
我一直在读通过PHPfreaks,W3Schools的,明显的StackOverflow,并试图使用模型我Adminer结果。我已经学会了一些我之前没有尝试过的连接,但经过几个小时的尝试(6小时)之后,我很乐意寻求帮助。
我的尝试要么没有找到任何东西,要么产生1个结果,要么产生8000+个结果。我的实际测试数据应该有4个结果。
这是我最新的尝试SQL,这是不工作的希望
SELECT
mat.ThreadTitle,
mat.CatID,
map.DateCreated AS "RecentID",
map.ThreadID,
map.LastUpdated
FROM
ma_Threads AS mat
INNER JOIN
ma_Posts AS map
ON mat.CatID = '$catID'
WHERE `pat.DateCreated(test.marvelchampions)` = (
SELECT MAX(DATE(pat.DateCreated))
FROM `pat`
)
请问您可以提供ddl表吗?有什么共同的列,你应该在联合使用? – Alex
strtolower($ thread-> title); –
我们需要查看表ma_Threads和ma_Posts的定义来调试SQL。请加上问题。 – Nic3500