是否可以使用SORM Framework?
从数据库中仅获取一个字段我想要的纯SQL是:
SELECT node_id FROM messages
我似乎无法在sorm中重现这一点。我知道这可能与sorm应该如何工作有关,但是现在我有两个巨大的表,有不同类型的消息。我被要求从两个表中获得所有唯一的node_id
。
我知道我可以使用sorm查询这两个表并解析所有数据,但我想让数据库工作。显然,如果在单个数据库调用中只能得到唯一的node_id
,那就更好了。
现在只需查询所有内容并解析它,就需要太长时间。
答案 0 :(得分:0)
似乎没有ORM支持你想要做什么,除非node_id
恰好是你的Message
对象的主键:
val messages = Db.query[Message].fetchIds()
在这种情况下,您不必担心它是UNIQUE
,因为主键根据定义是唯一的。或者,您可以运行自定义SQL查询:
Db.fetchWithSql[Message]("SELECT DISTINCT node_id FROM messages")
请注意,后者可能输入错误:您必须针对您的数据库进行尝试。您可能需要fetchWithSql[Int]
或其他一些变体:目前还不清楚SORM在未查询主键的情况下会做什么。