Bigquery क्वेरी में वर्ष, सप्ताह संख्या और दिन मान से दिनांक कैसे बनाएं।

उदाहरण के लिए- वर्ष =2019, सप्ताह संख्या =37 दिन=बुधवार।

आउटपुट: (2019-09-18)

वर्ष = 2019, सप्ताह संख्या = 36 दिन = मंगलवार।

आउटपुट: (2019-09-10)

यहां महीने की गणना सप्ताह से की जाएगी और तारीख इस आधार पर होगी कि दिया गया दिन उस सप्ताह में कब आता है।

नोट: Bigquery एक सप्ताह 0 से शुरू होता है, इसलिए यदि किसी अन्य सिस्टम में तुलना के लिए उपरोक्त मान की जांच करें तो यह 38 और 37 हो सकता है

1
Pankaj Bajpai 19 सितंबर 2019, 00:19

1 उत्तर

week-1 ऐसा नहीं होना चाहिए:

WITH tbl AS (
  SELECT 2020 year, 21 week, 'Friday' day
)
SELECT *, 
  (
    SELECT DATE_ADD(DATE_ADD(DATE(year, 1, 1), INTERVAL week-1 WEEK), INTERVAL hit DAY)         
    FROM UNNEST(GENERATE_ARRAY(0, 6)) hit
    WHERE FORMAT_DATE('%A', DATE_ADD(DATE_ADD(DATE(year, 1, 1), INTERVAL week-1 WEEK), INTERVAL hit DAY)) = day
  ) AS result
FROM tbl

अन्यथा यह अगले सप्ताह की तारीख लौटाता है

0
antonbar 19 मई 2020, 13:31