PostageSQLPostgreSQL查询当前时间范围内的数据

Posted 酷酷

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PostageSQLPostgreSQL查询当前时间范围内的数据相关的知识,希望对你有一定的参考价值。

在PostgreSQL中可以直接对时间进行加减运算:、

SELECT now( ) :: TIMESTAMP + \'1 year\';--当前时间加1年
SELECT now( ) :: TIMESTAMP + \'1 month\';--当前时间加一个月
SELECT now( ) :: TIMESTAMP + \'1 day\';--当前时间加一天
SELECT now( ) :: TIMESTAMP + \'1 hour\';--当前时间加一个小时
SELECT now( ) :: TIMESTAMP + \'1 min\';--当前时间加一分钟
SELECT now( ) :: TIMESTAMP + \'1 sec\';--加一秒钟
SELECT now( ) :: TIMESTAMP + \'1 year 1 month 1 day 1 hour 1 min 1 sec\';--加1年1月1天1时1分1秒
SELECT now( ) :: TIMESTAMP + ( col || \' day\' ) :: INTERVAL FROM TABLE --把col字段转换成天 然后相加

来个示例:

SELECT 
 *
FROM
 mc_member_card 
WHERE
 deleted = FALSE 
 AND create_time >= now()::timestamp + \'-20 day\'
 AND create_time <= now()

 

当当前时间等于日出时间时触发警报,即使应用程序在后台

【中文标题】当当前时间等于日出时间时触发警报,即使应用程序在后台【英文标题】:trigger alarm when current time equals to sunrise time even application in background 【发布时间】:2012-10-16 09:40:12 【问题描述】:

在我的应用程序中,我使用 CLLocation 管理器来查找当前位置。并且根据当前位置,我想获得我所在位置的日出和日落时间。

例如: 如果当前位置是旧金山,那么日出时间和日落时间就是旧金山的时间。至此,我成功了。 但是,如果当前时间等于日出时间,即使我的应用程序在后台,我也想每天触发警报。

我已经搜索了很多方法,但没有一个让我满意。我是 iOS 开发的新手。

applicationDidEnterBackground 方法在终止应用程序之前运行了一段时间。

【问题讨论】:

这不可能。部分答案请参见***.com/a/9621425/908621。 【参考方案1】:

您可能希望在 plist 中设置后台定位模式,以使其即使在后台也能响应位置更新。然后在位置更新回调中获取日落时间并在该时间安排本地通知。

此外,最好管理通知并禁用不适当的通知(更改位置 = > 新通知)。

更新: 在您的特定情况下,不需要连续的位置数据流,重要的位置变化跟踪就可以了。这种方法不需要 plist 中请求的后台定位模式,并且不会以光速耗尽电池。您可以在这里找到信息:- (void)startMonitoringSignificantLocationChanges。 请注意,即使在后台定位模式下,应用程序也不会在后台连续运行,它只会被调用以执行位置更新回调。

所以一开始你:

[locationManager startMonitoringSignificantLocationChanges];

然后在位置更新回调你:

- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation 
    // check location
    // get time of sunset

    // schedule UILocalNotification

刚刚为您找到了一篇文章:Setting a reminder using UILocalNotification in iOS 4. Objective-C. 另请查看:Executing code in background +schedule alarm on date

【讨论】:

我已经阅读了有关后台定位模式的信息。我尝试过但没有成功。你能在这个上发布一个小例子吗。我将非常感谢你。在这种情况下对电池有任何影响消费,因为应用程序将在后台连续运行..【参考方案2】:

Android Awareness API 具有 recently announced 新功能,可为您的用例提供简单的解决方案。实现您想要做的事情的方法是创建和注册一个相对于日出/日落指定的 TimeFence。

例如:

// Create TimeFence
AwarenessFence sunriseFence =
    TimeFence.aroundTimeInstant(TimeFence.TIME_INSTANT_SUNRISE,
        0, 5 * ONE_MINUTE_MILLIS);

// Register fence with Awareness.
Awareness.FenceApi.updateFences(
    mGoogleApiClient,
    new FenceUpdateRequest.Builder()
        .addFence("fenceKey", sunriseFence, myPendingIntent)
        .build())
    .setResultCallback(new ResultCallback<Status>() 
        @Override
        public void onResult(@NonNull Status status) 
            if (status.isSuccess()) 
                Log.i(TAG, "Fence was successfully registered.");
             else 
                Log.e(TAG, "Fence could not be registered: " + status);
            
        
    );

当栅栏在日出时评估为 TRUE 时,以及在日出后 5 分钟评估回 FALSE 时,您将收到回调。

请查看Fence API code snippets 文档了解如何添加您的自定义应用逻辑。

【讨论】:

以上是关于PostageSQLPostgreSQL查询当前时间范围内的数据的主要内容,如果未能解决你的问题,请参考以下文章

为啥我的视图中没有显示“前时间”?

c# 中如何取得当前时间后,把当前时间和数据库中的时间做判断,比如数据库中date的值为2011-01-11,当前时

MySQL模糊查询特殊字符如何查询

Java 求一周前时间

当当前时间等于日出时间时触发警报,即使应用程序在后台

IntelliJ IDEA使用心得之问题篇;