All the distinct days on which I created posts

0

Please login or register to vote for this query.

(click on this box to dismiss)

Writing Meta

Q&A about the site for the craft of professional writing, including fiction, non-fiction, technical, scholarly, and commercial writing

WITH 
  groups(userid, date, grp) AS (
    SELECT DISTINCT
      OwnerUserId,
      CAST(CreationDate AS DATE),
      dateadd(day, 
        -DENSE_RANK() OVER (PARTITION BY OwnerUserId ORDER BY CAST(CreationDate AS DATE)), 
        CAST(CreationDate AS DATE)) AS grp
    FROM Posts
    where OwnerUserId = ##UserId##
  ),
  max_consecutive_dates AS (
    SELECT 
      userid,
      COUNT(*) AS consecutiveDates,
      MIN(date) AS minDate,
      MAX(date) AS maxDate
    FROM groups
    GROUP BY userid, grp
  ),
  max_minDate AS (
    SELECT
      userid,
      MAX(minDate) AS max_minDate
    FROM max_consecutive_dates
    GROUP BY userid
  )
SELECT 
  mc.userid,
  mc.consecutiveDates AS maxConsecutiveDates,
  mc.minDate,
  mc.maxDate
FROM max_consecutive_dates mc
JOIN max_minDate mm ON mc.userid = mm.userid
WHERE mc.minDate = mm.max_minDate;

Enter Parameters

Options:
Switch to main site
loading Hold tight while we fetch your results