首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在php中计算具有相同ID的行

在php中计算具有相同ID的行
EN

Stack Overflow用户
提问于 2015-06-17 14:09:38
回答 2查看 1.8K关注 0票数 2

我试着用相同的id来数行

代码语言:javascript
运行
复制
|curs_code|cursistnr|Mark|Payed|
    C#        20       6    50
    PHP       25       8    100
    C#        8        7    100

输出需要

C#,2次

我试过了

代码语言:javascript
运行
复制
$sql = "SELECT count(curs_code) as 'count_of_curs' FROM cursus where curs_code='$id'";
$query = $magazijn->query($sql);
return $query->fetchAll());

但是给了我这个输出:

代码语言:javascript
运行
复制
C#
 array (size=1)
  0 => 
   array (size=2)
    'count_of_curs' => string '1' (length=1)
  0 => string '1' (length=1)

PHP
 array (size=1)
  0 => 
   array (size=2)
    'count_of_curs' => string '1' (length=1)
  0 => string '1' (length=1)

你对这件事的想法?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-06-17 14:18:49

从cursus选择curs_code,计数(*)为'count_of_curs‘,其中curs_code _curs_code_code=’$id‘组

如果您想要整个列表,请移除该位置。

票数 3
EN

Stack Overflow用户

发布于 2015-06-17 14:27:41

看起来你要问的问题是“为什么表达式返回值为1,而我期望值为2?"

我认为这意味着,在您看来是相同的两个C#事件实际上是不同的值。这可能是由于其中一个值中的“隐藏”空格字符造成的。

若要返回包含字符串C#,的curs_code的所有值,并“查看”实际存储的内容,请运行如下查询:

代码语言:javascript
运行
复制
SELECT curs_code
     , HEX(curs_code)
     , CHAR_LENGTH(curs_code)
  FROM cursus
 WHERE curs_code LIKE '%C#%'

作为一种示范:

代码语言:javascript
运行
复制
  SELECT cc
       , HEX(cc)
       , CHAR_LENGTH(cc)
    FROM ( SELECT 'C#' AS cc
           UNION ALL SELECT 'C#\t'
           UNION ALL SELECT 'C#\0'
         ) c  
   WHERE cc LIKE '%C#%'


  cc   HEX(cc)  CHAR_LENGTH(cc)  
  ---  -------  ---------------
  C#   4323                   2
  C#   432309                 3
  C#   432300                 3

如果您只想找到curs_code的“重复”值:

代码语言:javascript
运行
复制
  SELECT c.curs_code
       , COUNT(1) AS count_of_curs_code
    FROM cursus
   GROUP BY c.curs_code
  HAVING COUNT(1) > 1
   ORDER BY c.curs_code
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30894047

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档