gpt4 book ai didi

Mysql 查看某些字符串的最新版本

转载 作者:行者123 更新时间:2023-11-29 13:51:03 25 4
gpt4 key购买 nike

在我的数据库中,我有一个表,其中包含特定翻译字符串的所有版本。我想创建一个 View ,返回一个包含每个字符串的所有最新版本的表。

我想出了以下解决方案。

Table Strings
idString, Date, String, Chapter

这些是表的属性

View StringOrdered
Create View StringOrdered(idString, Date, String, Chapter) AS
SELECT * FROM Strings ORDER BY Date DESC

这是支持 View 。

View LastVersion
CREATE VIEW LastVersion (idString, Date, String, Chapter) AS
SELECT * FROM StringOrdered GROUP BY Chapter

有没有办法在没有支持 View 的情况下获取它?

最佳答案

您依赖于group by,根据数据的顺序获取某些内容的最后版本。尽管这在实践中可能可行,但 MySQL 文档明确表示不支持这一点。相反,尝试类似的方法:

create view LastVersion as
select s.*
from strings s
where s.chapter = (select max(chapter)
from strings s2
where s.String = s2.String
)

我假设您正在寻找String的最新章节。如果您正在查找 StringId 的最新章节,请相应地更改 where 语句。

请注意,MySQL 不支持 View 的 from 子句中的子查询。引用非常清楚(here):

The SELECT statement cannot contain a subquery in the FROM clause.

它确实支持其他子句中的子查询。

关于Mysql 查看某些字符串的最新版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16651386/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com