<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    oracle_查詢日期是否過期(大于等于某日期)

    今天開發CRM的一個小功能,需求大概是這樣的:有一張存儲客戶信息的表,這個表中有一個列代表著該用戶的“提醒時間”,它意為:如果當前時間大于等于這個值,那么該用戶就需要在展示的時候被標記為“需要提醒”,并且需要展示需要提醒的條數。

    其實這個問題不應該是個大問題,只不過本人oracle比較薄弱,需要進行記錄,以便后查。
    經過調查,我發現了如下幾個函數對于實現本需求有幫助::

    1:符號判斷函數 sign

    函數語法:
    sign(n)

    函數說明:
    取數字n的符號,大于0返回1,小于0返回-1,等于0返回0

    示例:
    一、select sign( 100 ),sign(- 100 ),sign( 0 ) from dual;

      SIGN(100) SIGN(-100) SIGN(0)
      ———- ———- ———-
      1 -1  0

    二、a=10,b=20 
      則sign(a-b)返回-1

    2:值比較函數 decode
    函數說明:
    根據條件返回相應值
    示例:
      decode(條件,值1,翻譯值1,值2,翻譯值2,...值n,翻譯值n,缺省值)  
      該函數的含義如下:  
      IF 條件=值1 THEN
      RETURN(翻譯值1)
      ELSIF 條件=值2 THEN
      RETURN(翻譯值2)
      ......
      ELSIF 條件=值n THEN
      RETURN(翻譯值n)  
      ELSE
      RETURN(缺省值)
      END IF
    或:
      when case 條件=值1 THEN
      RETURN(翻譯值1)
      ElseCase 條件=值2 THEN
      RETURN(翻譯值2)
      ......
      ElseCase 條件=值n THEN
      RETURN(翻譯值n)  
      ELSE
      RETURN(缺省值)
      END
    感覺這兩個函數就足夠了,那么現在理清楚寫sql的思路:
    比較每條記錄的“提醒時間”,過期或者到期就意味著需要設置提醒。
    1:先比較兩個時間
    表:crm_lwh_custinfo
    字段:remind_date(Date)

    1 sign(to_date(t.remind_date,'yyyy.mm.dd')-to_date(sysdate,'yyyy.mm.dd'))

    根據sign函數的返回值進一步設置sql要返回的值
    2:根據sign函數的返回值,通過decode函數設定sql要返回的值
    過期或者到期都用1標識,未到期,也就是默認值用0標識

    1 select decode(sign(to_date(t.remind_date,'yyyy.mm.dd')-to_date(sysdate,'yyyy.mm.dd')),-1,1,0,1,0
        as need_remind  from crm_lwh_custinfo t 

    如果你看到這里覺得有什么更好的辦法,或者覺得這種寫法有什么不足,歡迎留言。

    posted on 2015-03-24 14:35 都較瘦 閱讀(5718) 評論(0)  編輯  收藏 所屬分類: Oracle相關問題積累

    <2015年3月>
    22232425262728
    1234567
    891011121314
    15161718192021
    22232425262728
    2930311234

    導航

    統計

    公告

    博客定位:囿于目前的水平,博客定位在記錄自己的學習心得和隨手的練習

    常用鏈接

    留言簿

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 国产亚洲精品91| 亚洲AV色欲色欲WWW| 久久这里只精品国产免费10| 国产亚洲?V无码?V男人的天堂 | 国产精品69白浆在线观看免费 | 亚洲一区在线免费观看| 免费成人激情视频| yellow免费网站| 国产精品亚洲二区在线观看| 一个人免费播放在线视频看片| 在线观看国产区亚洲一区成人| 亚洲一区在线观看视频| 久久久久久久久免费看无码| 亚洲精品乱码久久久久久蜜桃图片| 成年女人免费视频播放77777| 亚洲成a∨人片在无码2023| 亚洲成av人片不卡无码久久| 一区二区三区免费看| 亚洲精品午夜无码电影网| 亚洲欧美日韩中文字幕一区二区三区 | 亚洲国产综合久久天堂| 国产成人精品免费视频大全| 亚洲va久久久噜噜噜久久| 114级毛片免费观看| 亚洲熟妇AV日韩熟妇在线| 免费精品国产自产拍观看| 亚洲视频在线免费| 亚洲成色999久久网站| 日本成年免费网站| 青娱乐在线免费观看视频| 亚洲欧洲成人精品香蕉网| 亚洲人成在线免费观看| 亚洲av无码成人精品国产 | 18禁美女黄网站色大片免费观看 | 亚洲人成国产精品无码| 51精品视频免费国产专区| 亚洲国产美女精品久久久| 综合亚洲伊人午夜网 | 青娱乐在线视频免费观看| 亚洲AV成人片色在线观看| 24小时日本在线www免费的|