我有两张桌子:
的文章:
ID INTEGER
...
的 Article_versions:
文章INTEGER
郎ENUM
时间TIMESTAMP
主要关键(文章,郎,时间)
...
我想从相关的最新行Article_versions中选择文章和字段中的字段。
我应该使用join或2 select语句吗?
我怎么能这样做?
答案 0 :(得分:0)
您确切地想要检索哪些信息令人困惑,但如果您知道某个特定ID,则可以使用:
SELECT ID,lang,time
FROM articles,article_versions
WHERE articles.ID=<article_id_you_provide> AND
articles.ID=article_versions.article AND
article_versions.time = (SELECT max(time)
FROM article_versions
WHERE article=<article_id_you_provide>);
如果这不是你想要的,请告诉我,我可以进一步修改我的答案。
答案 1 :(得分:0)
假设[Articles_versions]。[time]将是连接集中返回的唯一唯一列,您可以使用以下内容:
SELECT [Articles].[ID], [Articles_versions].[article], [Articles_versions].[lang], MAX([Articles_versions].[time])
FROM Articles Inner Join Articles_versions ON [Articles].[ID] = [Articles_versions].[article]
GROUP BY [Articles].[ID], [Articles_versions].[article], [Articles_versions].[lang]