Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从数据库中操作字符串_Php_Sql Server_String - Fatal编程技术网

Php 从数据库中操作字符串

Php 从数据库中操作字符串,php,sql-server,string,Php,Sql Server,String,我有一个表,其中包含字段studentId和AttendaceStatus AttendanceStatus是一个varchar(2)类型字符串。它的值类似于“ppppaappp” 如何计算“p”和“A”的数量并在PHP文件中显示?您可以实现一个简单的循环,对给定字符串中出现的字符进行计数: <?php $input = 'PPPPAAAPPP'; $counts = []; foreach (str_split($input) as $char) { if (isset($cou

我有一个表,其中包含字段
studentId
AttendaceStatus

AttendanceStatus
是一个
varchar(2)
类型字符串。它的值类似于“ppppaappp”


如何计算“p”和“A”的数量并在PHP文件中显示?

您可以实现一个简单的循环,对给定字符串中出现的字符进行计数:

<?php

$input = 'PPPPAAAPPP';

$counts = [];
foreach (str_split($input) as $char) {
  if (isset($counts[$char])) {
    $counts[$char]++;
  } else {
    $counts[$char] = 1;
  }
}

print_r($counts);

您可以直接使用sql查询:

SELECT SUM(CASE WHEN AttendaceStatus = 'P' THEN 1 ELSE 0 END ) AS present, SUM( CASE WHEN AttendaceStatus = 'A' THEN 1 ELSE 0 END ) AS absent
FROM tablename

如何将字段设置为
VARHCAR(2)
并保存“ppppaappp”的值?它将给出错误。
SELECT SUM(CASE WHEN AttendaceStatus = 'P' THEN 1 ELSE 0 END ) AS present, SUM( CASE WHEN AttendaceStatus = 'A' THEN 1 ELSE 0 END ) AS absent
FROM tablename