RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题 / 587163
Accepted
Стас
Стас
Asked:2020-11-06 00:05:40 +0000 UTC2020-11-06 00:05:40 +0000 UTC 2020-11-06 00:05:40 +0000 UTC

如何将多列合并为一列并删除 mysql 重复项?

  • 772

如何将多列合并为一列并删除 mysql 重复项?这是一个示例代码:

$result = mysql_query ("SELECT CONCAT(channeltv,',',channeltv2,',',channeltv3,',',channeltv4) as output FROM igry");
while ( $itemm = @mysql_fetch_array( $result ) ) : 
echo $itemm['output'];
endwhile;

结果,我得到类似这一行的内容:channel1, channel3, channel10, channel12channel1,,,channel5,,channel1,channel10, etc...

也就是说,全部在一行中,如果单元格为空并显示重复项,则显示一个逗号。

需要的是:

通道1

通道3

频道5

频道10

频道12

ETC...

如何正确编写这样的代码?

php
  • 2 2 个回答
  • 10 Views

2 个回答

  • Voted
  1. SergeyLebedev
    2020-11-06T00:56:55Z2020-11-06T00:56:55Z

    我认为最好在 PHP 中一行完成所有这些操作:

    $result = mysql_query ("SELECT CONCAT(channeltv,',',channeltv2,',',channeltv3,',',channeltv4) as output FROM igry");
    while ( $itemm = @mysql_fetch_array( $result ) ) : 
    echo implode("\n", array_unique(array_filter(explode(',', $itemm['output'])))); <---  тут было echo $itemm['output'];
    endwhile;
    
    • 0
  2. Best Answer
    Стас
    2020-11-06T03:09:45Z2020-11-06T03:09:45Z

    有兴趣的人找到了这个问题的解决方案,也许很笨拙,但它确实有效

    $result = mysql_query ("SELECT channeltv as output FROM igry
    UNION (SELECT channeltv2 as output FROM igry)
    UNION (SELECT channeltv3 as output FROM igry)
    UNION (SELECT channeltv4  as output FROM igry) ORDER BY output");
    echo '<select>';
    while ( $itemm = @mysql_fetch_array( $result ) ) : 
    echo '<option>'.$itemm['output'].'</option>';
    endwhile;
    echo '</select>';
    
    • 0

相关问题

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    如何停止编写糟糕的代码?

    • 3 个回答
  • Marko Smith

    onCreateView 方法重构

    • 1 个回答
  • Marko Smith

    通用还是非通用

    • 2 个回答
  • Marko Smith

    如何访问 jQuery 中的列

    • 1 个回答
  • Marko Smith

    *.tga 文件的组重命名(3620 个)

    • 1 个回答
  • Marko Smith

    内存分配列表C#

    • 1 个回答
  • Marko Smith

    常规赛适度贪婪

    • 1 个回答
  • Marko Smith

    如何制作自己的自动完成/自动更正?

    • 1 个回答
  • Marko Smith

    选择斐波那契数列

    • 2 个回答
  • Marko Smith

    所有 API 版本中的通用权限代码

    • 2 个回答
  • Martin Hope
    jfs *(星号)和 ** 双星号在 Python 中是什么意思? 2020-11-23 05:07:40 +0000 UTC
  • Martin Hope
    hwak 哪个孩子调用了父母的静态方法?还是不可能完成的任务? 2020-11-18 16:30:55 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    user207618 Codegolf——组合选择算法的实现 2020-10-23 18:46:29 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    Arch ArrayList 与 LinkedList 的区别? 2020-09-20 02:42:49 +0000 UTC
  • Martin Hope
    iluxa1810 哪个更正确使用:if () 或 try-catch? 2020-08-23 18:56:13 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5