数据库 Postgres 的 CTE 好像很不错

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

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 快不少...

共收到 10 条回复

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

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