Hive使用pmod函式實現dayofweek函式功能
dayofweek在hive2.2.0開始支援,低版本的hive原生未提供dayofweek函式(獲取一個日期是星期幾的方法),所以只有我們自己編寫udf函式提供,udf就不說了,在這裡給出了一個使用hive原生函式獲取星期幾的技巧。
pmod(datediff('${date}', '1920-01-01') - 3, 7)
'${date}'表示給的日期。
輸出的結果為0-6的數,分別表示 日,一,二 ... 六。
2016-01-01 5
2016-01-02 6
2016-01-03 0
如果想讓週一到週六對應數字1-7只需要將查詢出來的資料進行判斷就行了,如下:
IF(pmod(datediff('${date}', '1920-01-01') - 3, 7)='0', 7, pmod(datediff('${date}', '1920-01-01') - 3, 7))
2016-01-01 5
2016-01-02 6
2016-01-03 7
相關推薦
Hive使用pmod函式實現dayofweek函式功能
dayofweek在hive2.2.0開始支援,低版本的hive原生未提供dayofweek函式(獲取一個日期是星期幾的方法),所以只有我們自己編寫udf函式提供,udf就不說了,在這裡給出了一個使用hive原生函式獲取星期幾的技巧。pmod(datediff('${date}', '1920-01-01')
利用MYSQL的函式實現使用者登入功能,進出都是JSON(第二版)
利用MYSQL的函式實現使用者登入功能,進出都是JSON(第二版) CREATE DEFINER=`root`@`%` FUNCTION `uc_session_login`( `reqjson` JSON, `srvjson` JSON ) RETURNS json LANGUAGE
C語言 不使用strcpy 函式實現字串複製功能
#include<stdio.h> void Copy_string(char* str1, char* str2); //函式宣告 int main() { char str1[20]; char str2[20]; puts("請輸入字串str1:");
python 學習 實現isOdd函式 實現isNum()函式 實現multi() 實現isPrime() 格式化輸出日期DAY16
1、實現isOdd()函式 def isOdd(num): if num % 2 == 0: return True else: return False n = eval(input()) print(isOdd(n))
【C語言】編寫函式實現庫函式atoi,把字串轉換成整形
//編寫函式實現庫函式atoi,把字串轉換成整形 #include <stdio.h> #include <string.h> int my_atoi(const char *
編寫一個函式實現atoi()函式,即把字串數字轉變為數字
#include<iostream> #include<ctype.h> #include <math.h> using namespace std; int l
Linux環境程式設計之訊號處理(三、利用alarm()和pause()函式實現sleep()函式)
sleep()是執行掛起一段時間,而alarm()函式是定時器,pause()函式則是掛起程序,當出現訊號打斷時,才會繼續往前執行; 先來分享下alarm()函式,alarm()函式用來設定一個定時器,當時間超時時,會產生SIGALRM訊號,
模擬實現strcpy函式功能(優化改進)
strcpy函式,字串拷貝函式,傳入兩個引數,將第二個引數的值拷貝到第一個中去。 首先,給出一個普通的程式碼: #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> void
利用函式指標,編寫一段簡潔的程式碼,實現計算器的功能
#include<iostream> using namespace std; void function_addition(); void function_subtraction(); void function_multiplication(); void function_div
Qt:Qt使用滑鼠模擬函式mouse_event和按鍵模擬函式keybd_even實現網頁重新整理功能
用Qt實現網頁重新整理功能 前言 在上一篇部落格Qt:使用Qt實現網頁自動重新整理工具,使用了PostMassage函式 通過Windows的訊息機制實現的網頁重新整理功能。因為訊息種類太多,不方便使用和記憶,所以Windows下的大部分訊息可以使用對應等價的API函式,不必直接
MySQL if 函式實現類似Oracle decode函式功能
SQL SELECT if(timestampdiff(hour, sa.add_time, now()) < 1000, if(timestampdiff(hour, sa.add_time, now()) < 300, if(timestampd
Python 3中實現cmp()函式的功能
本文由荒原之夢原創,原文連結:http://zhaokaifeng.com/?p=1088 cmp() 函式是Python 2中的一個用於比較兩個列表, 數字或字串等的大小關係的函式, 在Python 3中已經無法使用這個函數了: >>> a = [1, 2,
Python---自己使用函式實現range功能
# *-* coding:utf8 *-* def my_range(start, end=0, step=1): if step == 0: raise ValueError("range() step argument must
用指標實現字串函式strcat()的功能.
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include <string.h> int main(){ char s1[
No.5 MYSQL實現 RANK函式排序功能
MySQL中不存在類似於SQL Server或Orcal中的rank()函式來得到排名。所以我們需要手動來時先這個函式,先看一下應用場景: 查詢每門課成績最好的前兩名: select r.cid,score,rank from (select tmp.cid,tmp.sc
利用tkinter實現簡單計算器功能(不使用eval函式)
利用tkinter實現簡單計算器功能(不使用eval函式) 一、思路 tkinter: 佈置主介面; 上部為數字顯示介面; 下部為數字鍵與功能鍵介面; 邏輯: 程式只考慮兩個運算元進行計算的情況,不考慮複雜情況 展示:
Visual C++網路程式設計經典案例詳解 第5章 網頁瀏覽器 製作個性化介面 如何實現收藏夾功能 新增訊息響應函式
使用者將網址新增到收藏夾以後 便可以直接單擊選單選單中的網址進行瀏覽 使用者單擊選單的訊息響應函式重要 首先在CMainFrame類的標頭檔案MainFrm.h 中定義一個彈出選單的訊息響應函式 程式碼如下 afx_msg void OnMenuClick(int nID); //定
利用OpenCV findNonZero函式實現類似matlab中find函式的功能
OpenCV和matlab都提供了強大的矩陣處理功能。但matlab也有一些功能是openCV不具備的。如find函式,可以找出矩陣中某個特定值的行列號。本文介紹一種方法,可以模擬find函式的功能。 // OpenCVFind.cpp : 定義控制檯應用程式的入口點。 /
Python功能點實現:函式級/程式碼塊級計時器
工程中我們常常需要對某一個函式或者一塊程式碼計時,從而監測系統關鍵位置的效能。計時方法是在程式碼塊前後分別記錄當前系統時間,然後兩者相減得到程式碼塊的耗時。最簡單原始的實現類似: from datetime import datetime start = datetime.now() # so
javascript中實現Sleep函式的功能
javascript中不提供sleep功能,而我們時長會用到這個功能。 有一種思路是跑一段迴圈體,讓程式空耗CPU的時間來實現延時。這有一個不足,不同的機器CPU的執行速度是不一樣的,這很容易導致的慢的機器會SLEEP很久。 筆者從別的論壇看到一種機智的解決方法,在不同