javascript - 对数据库中的名称进行排序和分离

标签 javascript sql database

有人能给我指出正确的方向吗?

我有一个包含少量消息的数据库。每条消息还有一个用户名..

我希望在下拉菜单中使用消息名称,以便用户可以单击用户并查看来自该用户的消息。

问题:下拉列表显示每条消息的每个用户,但我不知道如何分隔用户,这样如果有来自 ROB 的 7 条消息,则只会显示 1 个 ROB下拉列表..

我希望我在这里说得有道理。

因此,如果有人可以在这里帮助我,我将不胜感激。

我应该使用哪种查询将每个用户与数据库分开,以便我可以将它们作为个人用户显示在下拉菜单中......

而不是显示同一用户所写的消息数量。

以下是当前查询..

<div class='userbox'>
<header class='ubheader'>Contacts</header>
<section class='ubmain'>
";


    $db = new PDO("mysql:host=localhost;dbname=messages", 'root', ''); // 1. set database with this instead of conect - or change conect to this

    $query="SELECT * FROM `messagedatabase` WHERE `listID`='$listID' ORDER BY messagedate DESC";

    $stat=$db->prepare($query);

    $stat->execute();
        $Mcount = $stat->rowCount();
        $messagecount=$Mcount;

        while($row = $stat->fetch()){
             $messageaccountname=$row['messageaccountname'];

                if ($messageaccountname != $useraccountname){
                            echo"<div class='ubnames' onclick='selectmessage(\"{$messageaccountname}\")'>{$messageaccountname}</div>";  
                }
        }



echo "
</section>

</div>
";              

如有任何帮助,我们将不胜感激。

非常感谢。

最佳答案

简单的解决方案是向查询添加 DISTINCT 子句,例如: 从...中选择不同的消息帐户名

除此之外,听起来数据库还没有标准化。理想情况下,您的帐户应该位于与 messagedatabase 表相关的单独表中。但数据库设计是一个不同的讨论,超出了本文的范围。

关于javascript - 对数据库中的名称进行排序和分离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53162175/

相关文章:

javascript - 在 react 中显示两个日期

javascript - 如何使用自定义协议(protocol)从 Android 浏览器打开 Microsoft Outlook 应用程序?

mysql - 获取具有特定条件的所有列的计数

sql - postgresql - 通过更改 id 和 parent_id 使用同一表中的行更新树表

php - 在PHP页面上显示mysql数据库中最后添加的用户

sql - 为性能选择索引和主键

javascript - 使用 Bootstrap 模式打开新窗口

javascript - 创建 .json 文件的一段代码不起作用

sql - 从存储过程中插入表选择结果集但列数不相同

MySQL 检查时间范围内是否存在值变化