pycharm启动shell命令:
1 python odoo-bin shell
查询上次 admin 用户登录日期:
1 >>>self.browse(2).login_date 2 datetime.datetime(2019, 4, 4, 3, 7, 4, 343712)
odoo.tools.date_utils模块中提供了一些额外的便利函数,这些函数有:
- start_of(value, granularity)是某个特定刻度时间区间的开始时间,这些刻度有year, quarter, month, week, day或hour
- end_of(value, granularity)是某个特定刻度时间区间的结束时间
- add(value, **kwargs)为指定值加上一个时间间隔。**kwargs参数由一个relativedelta对象来定义时间间隔。这些参数可以是years, months, weeks, days, hours, minutes等等
- subtract(value, **kwargs)为指定值减去一个时间间隔
relativedelta对象来自dateutil库,可使用months或years执行date运算(Python的timedelta标准库仅支持days)。
1 >>> from odoo.tools import date_utils 2 >>> from datetime import datetime 3 >>> date_utils.start_of(datetime.now(),'week') 4 datetime.datetime(2019, 4, 8, 0, 0) 5 >>> date_utils.end_of(datetime.now(),'week') 6 datetime.datetime(2019, 4, 14, 23, 59, 59, 999999) 7 >>> from datetime import date 8 >>> date_utils.subtract(date.today(),months=2) 9 datetime.date(2019, 2, 9) 10 >>> date_utils.add(date.today(),months=2) 11 datetime.date(2019, 6, 9)
sql:coalesce()函数
①用途:
将空值替换成其他值
返回第一个非空值
可代替 union all 提高效率
②表达式:
COALESCE是一个函数, (expression_1, expression_2, ...,expression_n)依次参考各参数表达式,遇到非null值即停止并返回该值。如果所有的表达式都是空值,最终将返回一个空值。使用COALESCE在于大部分包含空值的表达式最终将返回空值。