当我在创建所需视图时遇到问题时,我正在使用魔兽拍卖 API 来测试一些 mysql 概念,从而在一些沙盒代码中玩耍。我已经设置了两个表,一个用于存储来自暴雪的实际数据,第二个用于在我拉更新时跟踪“lastModified”日期戳。每个拍卖条目都标有一个“updateId”,它指向另一个具有给定“lastModified”tstamp 的表。我想做的是编写一个视图来查找 MAX(lastModified) 的所有 updateId,然后返回与该 updateId 匹配的所有拍卖记录
我可以通过将它分成两个视图来使这个查询工作,但我想知道是否有某种方法可以将它压缩成一个视图。我知道的唯一语法是在'from'子句下包含select,但mysql在创建视图时似乎不喜欢这样:
mostRecentUpdates视图:
SELECT
au.auctionUpdateId as auId,
au.lastModified,
au.realmId,
au.house
FROM
`AuctionUpdates` AS au
WHERE
(
au.`lastModified` = (
SELECT
MAX(lastModified)
FROM
`AuctionUpdates`
)
)
mostRecentAuctions视图:
SELECT
a.*,
mr.lastModified AS lastModified,
mr.realmId AS realmId,
FROM (
Auctions AS a
JOIN mostRecentUpdates AS mr
ON (a.updateId = mr.auId)
)
ORDER BY
a.updateId
如果我将第一个选择放到第二个的 JOIN 中,它不会保存为视图。我只是想知道是否还有其他方法可以执行此查询,以便可以将其压缩为一个视图而不是其中的两个?