问题标签 [esqueleto]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - 选择内的 Esqueleto 计数
我有以下内容Entities
:
我想做这样的查询:
可以用Esqueleto
吗?
haskell - Haskell Esqueleto 函数与时间偏移进行比较
我怎么能在 Esqueleto 中做类似的事情:
sql - 需要用多个“AND”转换 OUTER JOIN
我有这个原始 sql 我想转换为 Esqueleto。它应该带来group
用户 ID 1 未通过group_membership
表注册的所有 s。
haskell - 是否可以将 deleteCascade 与 esqueleto 一起使用?
我在 esqueleto 中没有发现任何提到 deleteCascade 和 deleteCascadeWhere 的内容……是否有与这些功能等效的 esqueleto?
mysql - Esqueleto:如何执行超过 16 列的查询?
好吧,基本上它归结为是否有可能在 esqueleto 中返回超过 16 列的查询?
我有一个必须与之交互的遗留数据库,它需要连接具有 30-40 列的表,然后从我需要的可能的 80-100 列中挑选出 20 个,因此除非需要,否则我不会拉大列。似乎使用 esqueleto 我仅限于 16 列?有没有办法在没有孤儿实例的情况下克服这个问题?
提前致谢!
PS如果需要一个人为的例子,我会提供一个。
更新
我在文档中发现您可以执行元组的元组,这基本上可以让我获得更多的 16 列,然后将这些嵌套元组和模式匹配结果用于将其转换为我需要的数据类型或根据需要使用单个值.
供参考
如果您查看文档,SqlSelect
如果您查看实例,然后一直向右看,您会看到一个“提示”,这帮助我知道我可以做元组的元组。
postgresql - 如何在 Haskell Esqueleto 中查询数组包含
我正在尝试从数据库中选择包含事件标签列中的标签的所有事件。
Event
是一个模型,其列tags
在 Yesod 的模型文件中定义为tags [Tag]
. 标记是一个简单的模型,它newtype Tag = Tag Text
包含许多派生,包括PersistField
哪些应该允许将Tag
类型存储为Text
类型。
我想定义一个查询,该查询选择在其标签列中包含给定标签的所有事件。就像是:
我不知道该怎么做的部分是contains
功能。我似乎不太可能使用任何 postgres 数组函数,因为 Persistent 将数组作为 varchars 存储在 postgres 中。在这种情况下,我可以看中like
. 我实际上能够在 postgres 中通过这个查询得到我想要的结果:select * from events where tags like '%"tag"%';
但我不知道如何将它翻译成 Esqueleto 的语言。我尝试使用该like
函数,但它要求两个参数都是SqlString
我进行Tag
派生的实例,但无法弄清楚如何在[Tag]
不重叠实例的情况下进行派生。
haskell - 从 Esqueleto `LeftOuterJoin` 返回 `Maybe (Entity a)`
从一个人为config/models
的脚手架网站:
现在,使用 Esqueleto,我想用来LeftOuterJoin
获取容器中的插槽,如果尚未分配实际库存,则实际库存为空。
buildStuff
由于联接的“外部”性质,我希望需要以下签名:
但发现它需要以下内容:
Inventory
当(可预测地)字段填充有NULL
值时,这会导致运行时失败。
有没有办法将Entity Inventory
as投影到Maybe (Entity Inventory)
?
haskell - 如何使用 Esqueleto 执行“SELECT ... IN (SELECT ...)”?
考虑以下两个模型和一个GET /articles/:slug/comments
请求,我想检索属于一篇文章的评论,基于它的slug
.
使用persistence's rawSql
,我们可以如下完成
但是,鉴于我想维护 Haskell 和 SQL 之间的类型安全,我想使用esqueleto
. 这是我正在努力的部分。通过阅读文档,sub_select似乎是完成这项工作的工具。这是我所拥有的:
我也注意到in_ 运算符,但我不知道如何使用它,也不知道它是否比sub_select更合适。
我错过了什么?语法是否正确?谢谢。
sql - Haskell Esqueleto - 加入更新
我可以在 Haskell 中使用 join 进行更新查询吗?也许是这样的:
sql - Esqueleto:加入子查询(使用 subList_select)
我正在尝试将以下 SQL 转换为 Esqueleto:
要进行子查询,您必须使用subList_select。
我想不出一种将它与模式匹配相结合的方法:
所以我改为尝试where_
:
但是,这不会编译,因为subList_select
返回 aexpr (ValueList a)
而不是 a expr (Entity Scenario)
。