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

SQL技术咨询:如何提取数据表各分类列的非重复值列表

嘿,别担心,新手阶段对SQL的表述没那么精准太正常啦!我完全get到你的需求——就是想从board表的各个分类列里提取不重复的值对吧?下面我再把不同场景的写法给你理清楚:

提取分类列非重复值的SQL方案

单分类列的非重复值提取

你已经找对了单列的写法,就像你说的,提取category1的唯一值:

select distinct category1 from board;

执行后会得到category1的所有非重复结果:c、c++

如果要提取category2的非重复值,逻辑完全一样,只需要替换列名:

select distinct category2 from board;

这会返回category2的唯一值:tutorial、note、code

多分类列的组合非重复值提取

要是你想一次性获取category1和category2搭配的所有唯一组合,只需要把多个列都放在distinct关键字后面:

select distinct category1, category2 from board;

执行后会得到这两列的所有唯一配对结果:

c | tutorial
c | note
c++ | tutorial
c++ | code

实用小技巧

  • 注意:distinct是作用于你指定的所有列的,多列场景下是按整个行的组合去重,不是分别对每列单独去重哦
  • 如果需要让结果按一定顺序排列,可以加上order by子句,比如提取category1非重复值并按字母顺序排序:
select distinct category1 from board order by category1;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 08:06:39