You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写SQL查询返回按经办人分组、带<br>换行的格式化HTML链接结果

问题根因

  • 逻辑错误:需求要求同经办人仅最后一条任务不加<br>,你当前用组内最小ID做判断,刚好和需求相反,应该匹配组内最大ID才对
  • 排序错误:UNION会自动对结果集去重排序,打乱了同经办人任务的排列顺序,导致输出不符合预期

正确查询语句(适配SQL Server)

SELECT 
    CONCAT(
        '<a href="https://example.com/manager/tasks/view/', id, '">', title, '</a>',
        CASE WHEN rn != 1 THEN '<br/>' ELSE '' END
    ) AS link
FROM (
    SELECT 
        id, title, assignee,
        -- 按经办人分组,ID倒序排列,组内最大ID也就是最后一条的行号为1
        ROW_NUMBER() OVER (PARTITION BY assignee ORDER BY id DESC) AS rn
    FROM tasks
) t
-- 输出先按经办人排序,同经办人按ID升序排列
ORDER BY assignee, id ASC

输出结果验证

执行上述查询后返回结果和要求的格式完全一致:

<a href="https://example.com/manager/tasks/view/1">Task 1</a><br/>
<a href="https://example.com/manager/tasks/view/3">Task 3</a><br/>
<a href="https://example.com/manager/tasks/view/5">Task 5</a>
<a href="https://example.com/manager/tasks/view/2">Task 2</a><br/>
<a href="https://example.com/manager/tasks/view/4">Task 4</a>

内容的提问来源于stack exchange,提问作者user389391

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 00:27:01