数据库 Postgres 的 CTE 好像很不错

luikore · 2014年01月09日 · 最后由 bhuztez 回复于 2014年04月16日 · 2740 次阅读

CTE = common table expressions 类似于 AR 的 scope

http://www.craigkerstiens.com/2013/11/18/best-postgres-feature-youre-not-using/ http://ruby-china.org/topics/9333?page=1#reply14

设想:在这个基础上做个偷懒的 ORM 的话,大概可以比 ActiveRecord 快不少...

rails 是和数据库解耦合,如果代码写在数据库里面,调试和查看以及代码管控都不方便。

#1 楼 @linjunhalida 只是换了种写 sql 的方式吧。我觉得目前唯一的问题是,这将数据库限制为 pg 了

为啥要 ORM ...

#4 楼 @bhuztez 因为要把数据库的数据和语言内的对象互相转换...

#5 楼 @luikore 我觉得问题是在于把数据和代码搅在了一起

#6 楼 @bhuztez 这没什么问题吧,编译器都是这么搅的

#1 楼 @linjunhalida 只是把 DSL 翻译成 CTE 和还是其他语句的区别而已。另外管控会更方便

#2 楼 @googya 限制為 pg 沒什麼不好吧,反正想不到不用 PG 而用 MySQL 的原因。

#7 楼 @luikore

我觉得既然只用 pg 了,直接写 SQL 就好了。剩下的问题用不了几行代码就能解决的。

不到 300 行代码,就足够解决很大一部分问题了 (其实还是有点过度设计和太多 magic 了,肯定还有不少可以删的代码)

https://raw.githubusercontent.com/bhuztez/warm/master/warm.py

需要 登录 后方可回复, 如果你还没有账号请 注册新账号