SQL Server 的众多版主, 只有我不是 MVP 了, 想着心里真不是滋味。 博客写了不少, 贴子也回了不少, 还是要拼一拼。只问攀登不问高, 最终还是没有成就。
从今天开始起, 为 MVP 努力。
另外, MVP 的申请, 早已不像过往的老 MVP 得主所说, 要填什么 Word 表格, 我受他们的误导, 走了不少弯路, 留个链接, 算是造福后人吧。
https://mvp.microsoft.com/zh-cn/Nomination/nominate-an-mvp
统计自己博客的脚本:
--0. 加表分割函数
IF OBJECT_ID('[dbo].[Fun_String2ToStringArray]') IS NOT NULL
DROP FUNCTION [dbo].[Fun_String2ToStringArray]
GO
CREATE FUNCTION [dbo].[Fun_String2ToStringArray](@str NVARCHAR(MAX), @split NVARCHAR(10))
RETURNS @table TABLE ([item] NVARCHAR(max))
AS
BEGIN
IF LEN(@split) = 0
BEGIN
SET @split = N','
END
DECLARE @xml XML;
SET @xml = CONVERT(XML, '<x><![CDATA[' + replace(CONVERT(VARCHAR(MAX), @str), @split, ']]></x><x><![CDATA[') + ']]></x>')
INSERT INTO @table
SELECT item
FROM (SELECT c.value('text()[1]', 'nvarchar(4000)') [item]
FROM @xml.nodes('/x') t(c)) t
WHERE item IS NOT NULL
RETURN
END
GO
--1. 加博客类型表
IF OBJECT_ID('blogCategory') IS NOT NULL
DROP TABLE blogCategory
GO
CREATE TABLE blogCategory(
categoryId INT PRIMARY KEY,
categoryName NVARCHAR(20)
)
SET NOCOUNT ON
INSERT INTO blogCategory(categoryId,categoryName)VALUES(1,'sqlserver')
INSERT INTO blogCategory(categoryId,categoryName)VALUES(2,'sqlserver运维相关')
INSERT INTO blogCategory(categoryId,categoryName)VALUES(3,'sqlserver05之后新功能')
INSERT INTO blogCategory(categoryId,categoryName)VALUES(4,'sqlserver分区')
INSERT INTO blogCategory(categoryId,categoryName)VALUES(5,'sqlserverAlwayson')
INSERT INTO blogCategory(categoryId,categoryName)VALUES(6,'sqlserver练习')
INSERT INTO blogCategory(categoryId,categoryName)VALUES(7,'sqlserver扩展事件')
INSERT INTO blogCategory(categoryId,categoryName)VALUES(8,'sqlserver锁')
INSERT INTO blogCategory(categoryId,categoryName)VALUES(9,'sqlserver故障排除')
INSERT INTO blogCategory(categoryId,categoryName)VALUES(10,'sqlserver常用代码')
INSERT INTO blogCategory(categoryId,categoryName)VALUES(11,'sqlserver调优')
GO
--2. 加博客阅读数表
IF OBJECT_ID('blog') IS NOT NULL
DROP TABLE blog
CREATE TABLE blog(
categoryId INT, --博客类型id
reads VARCHAR(MAX) --每篇文章的阅读数,多个以逗号分隔 (注:只记录一年内的原创)
)
GO
SET NOCOUNT ON
INSERT INTO blog VALUES (1,'29,123,45,376,137,113,1527,261,154,284,607,1648,328,302,230')
INSERT INTO blog VALUES (2,'64,184,132,98,311,133,153,895,9587,553,626')
INSERT INTO blog VALUES (3,'168,309,212,89,261,101,106,138')
INSERT INTO blog VALUES (4,'137,123')
INSERT INTO blog VALUES (5,'42,75,197,128,56,463,73,433,835,774')
INSERT INTO blog VALUES (6,'76,95,34,28,34,48,139,83,77,94,621,101,175,129,126,100,93,150,241,361,246,293,251,877,523,360,337,199,315,165,650')
INSERT INTO blog VALUES (7,'499,168')
INSERT INTO blog VALUES (8,'290,499,295')
INSERT INTO blog VALUES (9,'78,61,75,197,376,133,98,219,433,292,221')
INSERT INTO blog VALUES (10,'39,59,99,137,59,33,36,217,88,290,50,56,92,107,96,66,190,118,411,292,459,176,380,187,353,274,466,182,383,463,279,171,132,167,128,296,317,269')
INSERT INTO blog VALUES (11,'58,56,256,493,38')
GO
SELECT COUNT(1) AS [一年内所有原创文章数量]
,SUM(CAST(item AS int)) AS [总阅读量]
FROM dbo.blog CROSS APPLY dbo.[Fun_String2ToStringArray](blog.reads,',') AS f
/*
一年内所有原创文章数量 总阅读量
136 43093
*/