MySQL查询从字段中删除重复值[重复]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL查询从字段中删除重复值[重复]相关的知识,希望对你有一定的参考价值。

我遇到了与数据库表字段相关的问题,其中许多值在逗号分隔的字符串中是相同的。

考虑表名Order,其中一个字段是options

现在options用逗号分隔值和类型是varchar。

例-

options value is 10,15,20,15,25,10

现在我想在Order表上运行SQL查询,

 options value should be 10,15,20,25

如何运行SQL查询来整理options字段中的唯一值?

答案

获得查询结果后,您可以在php中进行爆炸并执行array_unique

$duplicateValues = explode(',',$sqlResult);
$duplicateValues= array_unique($duplicateValues);
另一答案
SUBSTRING_INDEX(str, delim, count)

https://www.w3resource.com/mysql/string-functions/mysql-substring_index-- function.php

INSTR (ori_str, sub_str)

https://www.w3resource.com/mysql/string-functions/mysql-instr-function.php

POSITION(substr IN str)

https://www.w3resource.com/mysql/string-functions/mysql-position-function.php

另一答案

使用此查询,您将从表中获得唯一值:

select * from Order join numbers on char_length(options) - char_length(replace(options, ',', '')) >= n - 1

以上是关于MySQL查询从字段中删除重复值[重复]的主要内容,如果未能解决你的问题,请参考以下文章

SQLserver数据库中所有字段全部一样的重复数据如何删除?

Mysql删除重复记录,保留id最小的一条

如何在 MySQL 的单个列中删除重复的逗号分隔值

mysql 删除重复的数据保留一条

mysql 根据两个字段值查询时如何去除重复数据

mysql 删除重复数据