When I'm using a table variable to store queried result like this:
INSERT INTO @sortedArticleIds
SELECT article_id, NULL AS groupBy
FROM #articleIds a
GROUP BY article_id
ORDER BY MIN(sortBy) DESC;
the rows inserted to @sortedArticleIds
change randomly.
But if I use #table
like this:
INSERT INTO #tmp_table
SELECT article_id, NULL AS groupBy
FROM #articleIds a
GROUP BY article_id
ORDER BY MIN(sortBy) DESC;
the rows inserted to #tmp_table
are always same.
I'm using SQL Server 2008 R2.