我想使用 Persistent/Esqueleto 来实现计数估计。 本文推荐的一种方法是像这样定义 functionCREATE FUNCTION count_estimate(query text) RETURNS integer AS $$ DECLARE rec record; ...
我想使用 Persistent/Esqueleto 来实现计数估计。 本文推荐的一种方法是像这样定义 functionCREATE FUNCTION count_estimate(query text) RETURNS integer AS $$ DECLARE rec record; ...
这可能是一个愚蠢的问题,我不知何故忽略了具有低于标准的 Google-fu 技能的现有内容,但是有没有办法使用 Persistent 创建一个新的 Text 字段,对该字段具有唯一性约束,其中唯一性是 case-麻木不仁? 例如,假设我想创建一个唯一且没有重复的用户名字段,以便四个不同的用户无法创建 ...
让我们假设我有一个非常简单的带有外键的数据库(为了简单起见:一个带有自我引用的表;上下文 - 对金融工具建模): 然后我可以通过执行来获取所有行: 我注意到我可以使用自动生成的函数从结果中提取特定字段,例如 但是,当我尝试引用通过外键引用的值时,我得到: 我的问题:我如何引用与接收到 ...
我是 Haskell 的新手,目前正在尽最大努力防止我的大脑从里到外。 我有一个以这种方式定义的非常简单的数据库模式: 我注意到我可以通过以下方式查询表中的所有条目: 但是,如果我只想得到一个列怎么办? 我试过这样的事情: 但我收到一条错误消息: 我在这里发现了一个关于如何返回列子集的类似问题: H ...
这些是我尝试从三个表进行SELECT的尝试。 但是它们不编译,而且我不理解该错误(我不知道为什么它期望一个元组(Entity Issue, b0)而不是我认为代码尝试获取的三元组)。 尝试1: 错误1: 尝试2: 错误2: 这是我的持久模型: 如您 ...
我要翻译的查询的基本部分是这样的: 我正在尝试的Esqueleto(无法编译)是这样的: ...
在所有示例中,我看到esqueleto的结果被投影到元组列表或实体记录中 。 例如: 在esqueleto中是否有任何方法可以将列的子集投影到自定义记录(不同于实体)而不是元组? 这样做没有从元组到自定义记录的额外投影。 例如,假设从数据库中获取所有数据是低效的,因此我们只 ...
在所有示例中,我都看到esqueleto的结果被投影到元组列表中。 由于缺少标签,这使得编码和维护更加困难。 例如: 有什么办法让esqueleto将结果投影到记录列表中吗? ...
esqueleto返回的previousLogItem数据类型包含Data.Text.Internal.Lazy.Text 后来我尝试使用以下方法将previousLogItem与exampleCharList进行比较: 但这不起作用,因为类型仍然不同: ...
使用以下永久模式, 我想查询SELECT id, desc FROM picture WHERE desc IS NOT NULL 。 但 如何获得previews的签名? ...
如何在Esqueleto中select ... from (select ...) join (select ...) ? 我知道我可以使用Persistent中的rawSql ,但我想避免这种情况。 对于记录,这是完整的查询: select q.uuid, q.upvotes, ...
我可以使用entryId中的entryId更改行的字段,如下所示: 但是,一直写它会很烦人。 我希望能够编写如下内容: 我试图自己写这个助手,但是发现我不知道怎么写^. EntryId ^. EntryId以通用方式(即适用于任何条目类型的方式)。 可能吗? 还是我错过了 ...
我正在写一个带有Yesod和Persistent的webapp。 我有一个包含几个表的SQL数据库,其中包含我的“项目”的特征。 我有一个主表,对于具有多个值的选项,额外的表与id链接。 用户应该能够选择他想要过滤的那些特征,并指定过滤器值。 如果用户过滤os,许可证和SQL-Que ...
我正在尝试将以下 SQL 转换为 Esqueleto: 要进行子查询,您必须使用subList_select 。 我想不出一种方法将它与模式匹配结合起来: 所以我尝试用where_代替: 但是,这不会编译,因为subList_select返回expr (ValueList a)而不是expr (E ...
好吧,基本上可以归结为是否有可能在esqueleto中返回多于16列的查询? 我有一个必须与之交互的旧数据库,它需要联接具有30-40列的表,然后从需要的80-100列中选择20列,因此除非需要,否则我不会提取较大的列。 似乎esqueleto只能将我限制在16列? 没有孤儿实例,有什 ...
我有想要转换为Esqueleto的原始sql。 它将所有未通过group_membership表注册的用户ID 1的group group_membership 。 ...
是否可以使用esqueleto创建返回常量值的查询? 比如SELECT 1 。 ...
我一直在使用isNothing ,从Esqueleto ,但现在我想只是测试,如果它是not null ,我注意到,没有isJust ,我想知道它是不存在的原因,有什么事情我想达到类似的效果: isJust (a ^. MyEntityMyField) ...
我已经创建了一个用于加载一些Entities的函数,但是我在理解如何放置它的类型声明时遇到了一些麻烦,所以我阅读了关于 Yesod monad 的Yesod 书章节,以便更好地理解它,然后我来到了这个片段: 我认为类型声明中的这个Int需要以某种方式转换,更具体地说,我收到这个错误: ...