mysql 中按条件 distinct 字段

在 mysql 中,可以通过 distinct 关键字对查询结果中的重复值进行筛选。不过,在某些情况下,我们需要根据特定条件对字段进行 distinct 操作。

根据所给的表结构,用户希望按 domain 字段进行去重,但需要区分 境内 和 境外。对于此类需求,可以采用以下方法:

如果数据库中存在一个字段表示是否境外,例如 isout,则可以使用 distinct 关键字结合 isout 字段进行去重:

select distinct domain, isout from url;
登录后复制

如果数据库中没有字段表示是否境外,则可以使用以下查询语句对 loc 字段进行去重,并且区分 境内 和 境外:

SELECT DISTINCT domain
FROM url
WHERE loc = "境外"
UNION ALL
(
  SELECT DISTINCT domain
  FROM url
  WHERE loc != "境外"
);
登录后复制

此查询语句使用 union all 操作将 loc 等于 境外 的记录与 loc 不等于 境外 的记录合并,同时确保 domain 字段去重。

以上就是如何使用 DISTINCT 关键字在 MySQL 中按条件去重字段?的详细内容,更多请关注慧达安全导航其它相关文章!

点赞(0)

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部