php - MySQL - 计算数据库中名称实例的不同数量

标签 php mysql phpmyadmin

我表中的一列包含名称。我创建了一个查询:

SELECT COUNT(*) Number, (b_concat_name) Name FROM `js_b_table` GROUP by Name

产生以下内容:

Number | Name
1      | Chris Smith
4      | Fred Savage
2      | Sarah McArthur

如何更新 js_b_table 中包含该行中相应名称 (b_concat_name) 的列 b_name_count

最佳答案

如果我没理解错的话,你希望 js_b_table 看起来像这样:

b_concat_name | b_name_count | ... other fields ...
--------------+--------------+---------------------
fred          | 3            | ... other values ...
fred          | 3            | ... other values ...
fred          | 3            | ... other values ...
barney        | 2            | ... other values ...
barney        | 2            | ... other values ...

其中每条记录的b_name_count表示具有相同b_concat_name的记录总数。对吗?

如果是这样,你可以使用这个:

UPDATE js_b_table AS jbt1
 INNER
  JOIN ( SELECT jbt2.b_concat_name,
                COUNT(*) AS b_name_count
           FROM js_b_table AS jbt2
          GROUP
             BY jbt2.b_concat_name
       ) AS jbt3
    ON jbt3.b_concat_name = jbt1.b_concat_name
   SET jbt1.b_name_count = jbt3.b_name_count
;

关于php - MySQL - 计算数据库中名称实例的不同数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8234089/

相关文章:

mysql - SQL 查询具有许多连接的大量数据

mysql - phpMyAdmin 从工作台导入模式

php - php继续在服务器上崩溃

php - Magento Javascript 自定义 block

mysql - 按文本和数字排序

php - 使用 PHP+MySQL 时出现问号而不是希伯来语

php - 返回数值的 mySQL 计数查询?

php - 下拉菜单加载并选择特定值

php - 根据多个值更新多个字段

javascript - 下拉菜单总是选择第一个选项