我有这个查询。
SELECT
Distinct
CASE CHARINDEX( '?', SessionURL)
WHEN 0 THEN SessionURL
ELSE LEFT(SessionURL, CHARINDEX( '?', SessionURL) - 1) END AS VisitPage , count(*) as [VisitTime]
FROM VistedURL
它给出了以下结果。
VisitPage VisitTime a/default.aspx 99 a/home.aspx 15 a/admin/dashboard.aspx 05 a/contactus.aspx 54 a/admin/login.aspx 10
Not Like
:
WHERE SessionURL NOT LIKE '%admin%'
并删除包含admin
的上述结果表的第3和第5个数据。但无法在上述查询中使用Not Like
。谢谢。
答案 0 :(得分:2)
SELECT
CASE CHARINDEX( '?', SessionURL)
WHEN 0 THEN SessionURL
ELSE LEFT(SessionURL, CHARINDEX( '?', SessionURL) - 1) END AS VisitPage , count(1) as [VisitTime]
FROM VistedURL
GROUP BY SessionURL WHERE SessionURL NOT LIKE '%admin%'
请尝试以上查询。 同样 count(1)
优于count(*)
答案 1 :(得分:1)
试试这个
SELECT CASE WHEN CHARINDEX( '?', SessionURL) = 0 THEN SessionURL
ELSE LEFT(SessionURL, CHARINDEX( '?', SessionURL) - 1) END AS VisitPage,
count(1) as [VisitTime]
FROM VistedURL
WHERE SessionURL NOT LIKE '%admin%'
GROUP BY SessionURL