我正在使用以下SQL语句将TableA中的数据复制到TableB。将数据从一个表复制到另一个表并设置固定值?
INSERT INTO TableB (url, pageViews)
SELECT DISTINCT TOP(5) url AS url, SUM(HitCount) As pageViews
FROM TableA
WHERE (url LIKE '%www%site') AND (YEAR(dtDate) = 2011) AND (MONTH(dtDate) = 1)
GROUP BY url
ORDER BY pageViews DESC
目前,这一工作在把网址和浏览量数据表B到下面大(请忽略的点 - 这是用于格式化样样在行看起来像一个表)。
|URL | pageViews | ranking
|www.site.com | 25220 | NULL
|www.site.com/a | 25230 | NULL
|www.site.com/b | 25433 | NULL
但排名列是NULL。对于每一行,我从表A把划过,我想设置的排名列的值(仅在表B存在)是“TOP5”,如下:
|URL | pageViews | ranking
|www.site.com | 25220 | Top5
|www.site.com/a | 25230 | Top5
|www.site.com/b | 25433 | Top5
我非常感谢这方面的帮助。
非常感谢:)
请用您正在使用的RDBMS标记您的问题,因为这不是标准的SQL。 – 2011-01-31 13:08:23