我正在尝试从表中获取最大版本号。我的表内容是:
id externalId name version
1 10 n1 1
2 65 n2 2
3 10 n3 2
4 77 n4 1
在上表中,我们具有的最大版本为2的行,因此我的查询必须针对传递到我的查询中的给定的externalId返回此最大版本的行。
我现在坚持写它的Slick版本。有什么建议,指针吗?到目前为止,这是我所拥有的:(我传递了externalId)
for {
myTable1 <- myTable1Elems
if myTable1.version === (
myTable1Elems
.filter(_.externalId === s"$externalId")
.map(_.version)
.max
)
} yield myTable1
这似乎做错了事,因为我的测试表明,当我要求externalId = 77的最大版本时,它返回2行。
1 10 n1 1
4 77 n4 1
作为结果返回,这肯定是错误的。我想我需要分组,但是我无法弄清楚如何编写Slick组合器!有什么帮助吗?
所以我设法解决了这个问题:
private def configMaxVersionFilter(extId: String) = for {
tbl <- myTable1Elems
if tbl.externalId === s"$extId" && tbl.version === (
myTable1Elems
.filter(_.externalId === s"$extId")
.map(_.version)
.max
)
} yield tbl
rank ▲ ✰ vote url 45 441 233 760 url 合并列表中的列表 可能重复的问题: Flattening a shallow list in Python Comprehension for flattening a sequence of sequences? 我想是不是有更好的方法 我可以用一个循环来做,但是除了这样做还有什么更cool的用一行来做的方法?我用redu
我有一个从应用程序中提取的数据库(我没有创建它)。我需要提取数据以用于不同的应用程序。主表包含3个外键,每个外键链接到其他表。我想用其他表中的特定列值替换FK ID。主表如下所示: 数据: 状态、雇员和类型都是外键。它们链接到具有以下布局的表: 用户: 类型: 地位: 我希望主桌看起来像这样 我已经尝试了我在谷歌上找到的各种东西,但是我不能让它以我想要的方式出现。我来自PHP背景,但我在SQL方面
问题内容: 典型的ConfigParser生成的文件如下所示: 现在,有一种方法可以索引列表,例如: 问题答案: 没有什么可以阻止您将列表打包为定界字符串,然后从配置中获取字符串后再将其解包。如果您这样做,则您的config部分如下所示: 它虽然不漂亮,但对于大多数简单列表而言,它都是有效的。
我有一个关于Spring+Thymeleaf日期格式的问题。我有一个带有字段的简单实体。我想从一个用户的表单中获取这个日期,并将其保存到MySQL数据库中。我遇到了这样一个错误: 无法将类型java.lang.String的属性值转换为属性日期所需的类型java.time.localdate;嵌套异常为org.springframework.core.convert.ConversionFaile
问题内容: 假设我有一个像这样的表: 我想列举出部分属性为0的群组。 最终我想得到这个: 是否可以使用Postgres窗口函数解决此问题,或者还有另一种方法? 问题答案: 是的,这很简单:
问题内容: 有没有办法让AngularJS在模型数据中评估表达式? HTML: 模型: 最终结果将是:。 问题答案: 您可以使用该服务来插值字符串… JSFiddle
问题内容: 我有一个 清单清单 : 我想转换为一个 集合, 即删除重复列表并从中创建一个仅包含 唯一 列表的新列表。 在上述情况下,所需答案将是 但是当我这样做时,它给了我错误 TypeError:无法散列的类型:“列表” 你能解决我的问题吗?提前致谢! 问题答案: 由于列表是可变的,因此不能进行哈希处理。最好的选择是将它们转换为元组并形成一个集合,像这样 我们一次遍历一个列表,将其转换为一个元组