我正在使用Postgres 9.0版本.我想在日期中添加几个月来计算新日期并在表格中更新.这里添加的月数将是整数变量.我的代码如下:
declare numberofmonths smallint = 5;
update salereg1 set expdate = current_date + interval cast(numberofmonths as text) month;
Run Code Online (Sandbox Code Playgroud)
上面的代码显示了转换时的语法错误.我不知道如何将numberofmonths
变量指定为文本..任何人都可以帮助我.我犯的错是什么..
我正在使用一个应用程序,它使用phpActiveRecord
和mySQL从传感器网络中提取数据并将其绘制到客户端上的一些flot.js图表上.
用户可以选择几个时间帧来影响图形显示的数据范围. 2hrs, 24hrs, 3 days and 1 week.
传感器每隔60秒发布到数据库,因此在绘制图形时,查询会在所有行之间拉入now and DATE_SUB(CUR_DATE - INTERVAL ? DAY)
?是1,3或7等
但是,这会导致返回大量行,(60,000 + for the full week!)
并导致巨大的延迟和服务器错误.
我知道我可以大量增加php.ini
文件中可用于查询的最大内存,但这不是一个好的解决方案,并且无法解决速度问题.
我的问题是,有没有一种方法可以根据用户希望查看的间隔长度,轻松选择所需日期范围内的每一秒或第三行?
在C或Java中,我会做一些像模数选择来返回备用行但我想不出在当前框架中执行此操作的方法.
任何想法,将不胜感激.谢谢.