悠悠楠杉
oblog_4.6_SQL语句
id
:文章的唯一标识符title
:文章标题keywords
:文章关键词,以逗号分隔description
:文章描述content
:文章正文内容publish_date
:发布日期
sql
-- 假设我们只选取一个文章的记录作为示例,实际使用时可以修改WHERE子句来选择多条记录或全部记录
SELECT
title,
CONCAT_WS(', ', TRIM(SPLIT_STRING(keywords, ',', 1)), TRIM(SPLIT_STRING(keywords, ',', 2))) AS keywords_trimmed, -- 简化关键词为最多两个词
description,
LEFT(content, 1000) AS content_shortened, -- 截取正文前1000字
DATE_FORMAT(publish_date, '%Y-%m-%d') AS publish_date_formatted -- 格式化日期
FROM
articles
WHERE
id = 1; -- 选择ID为1的文章,可以修改为其他ID或去掉WHERE子句来获取所有文章
在以上SQL查询中,我们使用了MySQL的SPLIT_STRING
函数来从keywords
字段中提取最多两个关键词(根据实际情况调整数量),并使用CONCAT_WS
函数将它们连接起来,同时去除了每个关键词两边的空格。我们还用LEFT
函数截取了content
字段的前1000个字符作为简短的“正文”,最后对publish_date
进行了格式化处理。
sql
SELECT CONCAT(
'# ', title, '\n', -- 标题前加'#'
'## 关键信息\n',
'**关键词**: ', keywords_trimmed, '\n', -- 关键词加粗显示
'**描述**: ', description, '\n', -- 描述文本不加任何特殊格式
'**正文预览**: ', content_shortened, '\n', -- 正文前1000字不加任何特殊格式,确保不超过Markdown文件长度限制
'**发布日期**: ', publish_date_formatted, '\n' -- 发布日期显示为Markdown中的斜体格式
) AS markdown_content;
这样生成的字段就可以直接被用于生成Markdown格式的博客文章了。如果需要进一步处理或生成多篇文章的Markdown文件,则可能需要使用编程语言(如Python)来读取SQL查询结果并逐条构建Markdown文件。