不带orm的python sql查询生成。
mason的Python项目详细描述
梅森图片:https://travis-ci.org/vail130/mason.svg?branch=master
mason是一个很好的、轻量级的sql查询生成器。它允许您使用对象而不是sql字符串,而不需要让orm接管您的数据库模型。
代码块::python
(purchases.datetime\u purchased)::date
from purchases
inner join user s on purchases.purchases\u id=users.user\u id
where purchases.datetime\u purchased between%(start)s and%(end)s
and(purchases.purchases\u id=%(user\u id)s or purchases.purchases\u id为空)
订单依据purchases.datetime_purchased asc
limit 10
offset 10
“
方便:)
来自mason import table,param,select,and,or,date,数字
purchases=table('purchases')
users=table('users')
user_id=param('user_id')
start=param('start')
end=param('end')
query=str(
选择(purchases.id,purchases.product_name,
数字(purchases.product_price,10,2),
日期(purchases.datetime\u purchased))
.from(purchases)
.inner\u join(users.on(purchases.purchaser\u id==users.user\u id))
.where(and(purchases.datetime\u purchased.between(start.)and(end),
or(purchases.purchaser\u id==user\u id,
采购.采购员id.is_null))
.订单依据(采购.日期时间_purchased.asc)
.限制(10)
.偏移量(10)
代码块::sh
development
----
…代码块:sh
cd path/to/repos
git clone git@github.com:vail130/mason.git
cd mason
mkvirtualenv mason
pip install-r requirements.txt
make test
mason是一个很好的、轻量级的sql查询生成器。它允许您使用对象而不是sql字符串,而不需要让orm接管您的数据库模型。
代码块::python
(purchases.datetime\u purchased)::date
from purchases
inner join user s on purchases.purchases\u id=users.user\u id
where purchases.datetime\u purchased between%(start)s and%(end)s
and(purchases.purchases\u id=%(user\u id)s or purchases.purchases\u id为空)
订单依据purchases.datetime_purchased asc
limit 10
offset 10
“
方便:)
来自mason import table,param,select,and,or,date,数字
purchases=table('purchases')
users=table('users')
user_id=param('user_id')
start=param('start')
end=param('end')
query=str(
选择(purchases.id,purchases.product_name,
数字(purchases.product_price,10,2),
日期(purchases.datetime\u purchased))
.from(purchases)
.inner\u join(users.on(purchases.purchaser\u id==users.user\u id))
.where(and(purchases.datetime\u purchased.between(start.)and(end),
or(purchases.purchaser\u id==user\u id,
采购.采购员id.is_null))
.订单依据(采购.日期时间_purchased.asc)
.限制(10)
.偏移量(10)
代码块::sh
development
----
…代码块:sh
cd path/to/repos
git clone git@github.com:vail130/mason.git
cd mason
mkvirtualenv mason
pip install-r requirements.txt
make test