kotlin - kotlin 暴露的 DSL 中的 SQL Select 查询
问题描述
Kotlin Exposed DSL中以下 SQL 查询的翻译是什么?
SELECT id FROM `Sessions` WHERE session_id="155924f2-31ff-4c2c-a8fa-7fb0afba0ff8""
我假设每个 session_id 在表 Sessions 中都是唯一的。现在我正在使用以下代码。我有一种感觉.forEach
是多余的。我找不到正确的语法来摆脱它。
var sessionId = "155924f2-31ff-4c2c-a8fa-7fb0afba0ff8"
var sessionIdInDb = 0
Sessions.select { Sessions.session_id eq sessionId }.forEach {
sessionIdInDb = it[Sessions.id].value
}
解决方案
Exposed 实现了常见的收集方法,例如first()
允许您编写如下内容:
val sessionIdInDb = Sessions
.select { Sessions.session_id eq "155924f2-31ff-4c2c-a8fa-7fb0afba0ff8" }
.first()[id]
.value
推荐阅读
- databricks - 仅在计划作业运行时无法推断 Parquet 的架构
- google-chrome-extension - 当 storage.sync 超出配额时如何同步 Chrome 扩展 Storage.local
- javascript - Discord.js-commando 节流不起作用
- png - sws_scale PAL8 到 RGBA 返回不清晰的图像
- node.js - 将图像上传到 SailsJS(通过 Skipper)并在流中调整大小
- entity-framework - 实体框架(代码优先)- 一对多关系
- javascript - 如何从对象中删除未定义的属性和从数组中删除元素
- azure-devops - 在 DevOps 中管理一致的 Webpack 构建
- php - 使用 php shell_exec() 调用时,Blender 未运行
- python-3.x - dateutil tz.datetime_ambiguous() 函数抛出值错误