Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql Sql查询以获取文本类型中的一个实例_Mysql_Sql - Fatal编程技术网

Mysql Sql查询以获取文本类型中的一个实例

Mysql Sql查询以获取文本类型中的一个实例,mysql,sql,Mysql,Sql,我有一个表,其中有一列类型为text,我将数据与逗号分隔的值放在一起 S.No Text 1 A,A,A,B,B,C,A 2 A,B,B,C,A 3 A,B,B,C,A 4 B,B,C,A 5 B,B,C 这是我需要更新文本的两列,以便它只包含一个时间 输出 S.No Text 1 B,B,C,A 2 B,B,C,A 3 B,B,C,A 4 B,B,C,A 5 B,B,C,A 在m

我有一个表,其中有一列类型为text,我将数据与逗号分隔的值放在一起

S.No   Text

1      A,A,A,B,B,C,A
2      A,B,B,C,A
3      A,B,B,C,A
4      B,B,C,A
5      B,B,C
这是我需要更新文本的两列,以便它只包含一个时间

输出

S.No   Text

1      B,B,C,A
2      B,B,C,A
3      B,B,C,A
4      B,B,C,A
5      B,B,C,A
在mysql中有这样做的方法吗
我试着用“替换”来做,但做不到。

我想这就是你要找的

SELECT
    No,
    REPLACE(Text, 'A,', '') AS Text
FROM
    your_table
编辑:

SELECT
    TT.No,
    CONCAT(REPLACE(REPLACE(TT.Text, 'A,', ''), ',A', ''),',A') AS Text
FROM
(
    SELECT 1  AS No,    'A,A,A,B,B,C,A' AS Text FROM DUAL UNION
    SELECT 2  AS No,    'A,B,B,C,A'     AS Text FROM DUAL UNION
    SELECT 3  AS No,    'A,B,B,C,A'     AS Text FROM DUAL UNION
    SELECT 4  AS No,    'B,B,C,A'       AS Text FROM DUAL UNION
    SELECT 5  AS No,    'B,B,C'         AS Text FROM DUAL
) TT

请参见标准化。结果5看起来不正确我猜一个单元格必须包含一个
a
,看第五行,对吗?是的,每行必须包含一个“a”,所以基本上,你必须去掉所有的a,然后添加一个?我建议你提出你的问题,事实上,我们必须要求所有这些澄清,这意味着你的问题是不完整的。你也没有说任何关于字符顺序的东西(我想这是不相关的),你的样本表明B,B,C的模式总是存在的(我想也不是这样的)‘a’应该总是存在的,无论文本有没有。另外,如果文本是A、B、C,那么您所说的将不起作用。。。B,C。。这是错误的。它应该是A,B,C这是你说的是你想要的输出!,更新你的问题并澄清你想要得到的是什么啊,对不起,刚刚注意到你最后想要A,我会更新我的答案answer@SudhanshuGupta西西姆不厌其烦地更新了他的答案,现在请你不厌其烦地更新你的问题。