私のテーブルデータは次のようになります。
SessionRefere
http://www.google.com/url?sa=t&rct=j&q=aaa bbb&source=web&cd=1&cad=rja&sqi=2&ved=0CB4QFjAA&url=http://www.abc.com/&ei=QFR0UM-JKIrQrQfsuoG4CQ&usg=AFQjCNExYcKkcvobBbktLGNksptf1giQRw
-------------------------------------------------
http://www.google.com/reader/view/?hl=es&tab=Xq&at=RTknd_lBUUnvNqan2641EA
----------------------------------------------------
http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=5&cad=rja&ved=0CEgQFjAE&url=http://www.abc.com/ppp.aspx&ei=dmd0UOO9AYnY4QS1sYGwBw&usg=AFQjCNGIFcJUUSVpl_ZiZoSWDP2LkIagtw
サンプルデータのみです。このような場合が多くあります。だから私はカウントする前に元のURL部分が欲しいです。
このクエリを使用してデータを取得します。
DECLARE @temp table(RefPage nvarchar(200))
insert into @temp
SELECT
CASE CHARINDEX( '?', SessionReferer)
WHEN 0 THEN SessionReferer
ELSE LEFT(SessionReferer, CHARINDEX( '?', SessionReferer) - 1) END AS RefPage
FROM Tracker WHERE [start] between '1-1-2010' and '1-1-2015' and SessionReferer<> ''
select distinct RefPage, count(*) as [VisitTime] from @temp
group by RefPage
order by [VisitTime] desc
そして私の結果は次のとおりです。
SessionRefere VisitTime
http://www.google.com/url 2
http://www.google.com/reader/view/ 1
しかし、私は結果が欲しいです:
SessionRefere VisitTime
http://www.google.com 3
欲望の結果を得ることが可能ですか、それとも私は間違っていますか?ありがとう。