【发布时间】:2013-03-26 17:36:45
【问题描述】:
我一直在研究 scala,主要是关于如何构建类似于 C# LINQ/SQL 的 DSL。使用 C# LINQ 查询提供程序后,很容易引入我们自己的自定义查询提供程序,它将 LINQ 查询转换为我们自己的专有数据存储脚本。我在 scala 中寻找类似的东西,例如。
val query = select Min(Close), Max(Close)
from StockPrices
where open > 0
首先,这甚至可以使用内部 DSL 在 scala 中实现。
高度赞赏这方面的任何想法/想法。
我还是 Scala 领域的新手,但开始研究 Scala MetaProgramming & Slick。我对 Slick 的抱怨是我想让我的 DSL 接近 SQL 查询——类似于上面的语法。
【问题讨论】:
-
生成的SQL是什么样子的?
Open,Close和Open.Close是什么意思?open是StockPrices的属性吗? -
对不起,这是一个错字,我已经修正了我原来的帖子。我会将这个查询翻译成我们专有的脚本语言。但是,我根据您的代码示例得到了这个想法并开始阅读宏,让我们看看我离这里有多远。