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)

Open Data

Q&A for developers and researchers interested in open data

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##
  ),
  consecutive_info AS (
    SELECT 
      userid,
      COUNT(*) AS consecutiveDates,
      MIN(date) AS minDate,
      MAX(date) AS maxDate
    FROM groups
    GROUP BY userid, grp
  ),
  ranked_consecutive_info AS (
    SELECT 
      *,
      ROW_NUMBER() OVER (PARTITION BY userid ORDER BY consecutiveDates DESC, minDate DESC) AS row_num
    FROM consecutive_info
  )
SELECT 
  userid,
  consecutiveDates,
  minDate,
  maxDate
FROM ranked_consecutive_info
WHERE row_num = 1;

Enter Parameters

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