2017-05-30 166 views
2

我有一個SQL表,其中有一列表示天數,幷包含像23,26,45等條目的列... 我試圖將每個條目轉換爲「星期數」。從本質上講,我的意思是,如果我的一天的入場時間在0到6之間,那麼這是第一週,如果是7和13,那麼這是第2,14和20周,第3周等等。有一種「有效」的方式來做到這一點在SQL?SQL將天數轉換爲星期數

謝謝。 托馬斯。

+0

一直到第52周? –

+1

是不是你只是'floor(day/7)+ 1' – xQbert

回答

5

您只需要標準除法功能。它忽略了其餘部分:

SELECT (Days/7) + 1 
+1

由於整數數學,它忽略了其餘部分。 – xQbert

+0

嗨。爲什麼+1? –

+3

因爲6/7 = 0而你說0-6是第1周 – xQbert

1

你可以試試這個,不需要加+1;

SELECT (Days/7.00) 
+0

這將返回小數。 –

+0

是的,如果Days <7,這將提供確切的結果,使用ROUND()轉換小數以獲得所需的輸出。 –

+0

輪=壞。 6/7會在第0周時產生1。 – xQbert