【问题标题】:A mySQL count query to return a numeric value?一个返回数值的 mySQL 计数查询?
【发布时间】:2012-04-02 17:56:10
【问题描述】:

我建立了一个包含数百名客户的数据库,他们都是独一无二的。但是,如果某些客户是家庭的一部分,则它们是联系在一起的。例如

我有一个关联这些客户的家庭 ID,例如A. Jones 女士的客户编号为 005,B.Jones 先生的客户编号为 017,由于他们是相关的,因此我为他们分配了家庭 ID 001。

我在网上搜索过,但似乎没有任何地方可以帮助我了解如何进行某种 mySQL 计数来回显 WHERE familyID = 001 的人数。

另外,考虑到家庭ID = 001 的 mySQL 搜索条件,有什么方法可以返回两个单独的客户记录。

非常感谢,

汤姆。

编辑:意识到我会放乘客而不是顾客,我的错!此外,这些名称是出于明显的 DPA 原因而编造的 :)

【问题讨论】:

  • 你能发布样本数据和所需的o/p吗?
  • 乘客记录??这位乘客是从哪里来的……你说的是客户吧?

标签: php mysql sql phpmyadmin


【解决方案1】:

你想要COUNT() 函数

SELECT count(*) AS count FROM customers WHERE familyID="001"

您可以将* 替换为列名,这样会更快一些。

【讨论】:

    【解决方案2】:
    $sql='SELECT count(familyID) AS count FROM customers WHERE familyID="001"';
    

    这里可以获取familyID=001的客户数​​量

    但是这位乘客是从哪里来的呢?与客户有什么关系?

    如果是关于客户而不是乘客,那么

     $sql='SELECT * FROM customers WHERE familyID="001"';
        $query=mysql_query($sql);
        $count=mysql_num_rows($query);
        while($fetch_arr=mysql_fetch_array($query)){
          $familyName=$fetch_arr['name'];
          echo  $familyName;
         }
    

    您可以从 * 获取所有记录,从 $count 可以获取客户数量

    【讨论】:

      【解决方案3】:

      这种情况下可以使用count函数,可以作为。

      Select count(*) form TABLE NAME where familyID = "001"
      

      【讨论】:

        【解决方案4】:

        如果您想要唯一记录和计数,请使用 OVER 函数:

        SELECT customers.id, 
            customers.additional_columns, 
            count(1) OVER (PARTITION BY familyID) AS count 
        FROM customers
        

        【讨论】:

          【解决方案5】:

          你可以做类似的事情

          $result = mysql_query("SELECT * FROM families where familyID='001'", $link);
          $num_rows = mysql_num_rows($result);
          

          source

          【讨论】:

            【解决方案6】:

            对于你的第一个问题,这样就可以了

            $result = @mysql_query("SELECT * FROM tbl_name WHERE familyID = '001'");
            echo mysql_num_rows($result); //This line should display the count
            

            【讨论】:

            • -1 以完全无用和不需要的方式使用 @ 运算符。
            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2018-11-19
            • 1970-01-01
            • 2014-08-02
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多