从数据库中选择count(*)

Joh*_*ohn 3 php mysql pdo

我有这个SQL查询,当它运行到phpMyAdmin时它正常工作.

SELECT COUNT( * ) , LENGTH( Number ) AS Numbers
FROM  `history_2015-07-22` 
WHERE Number NOT LIKE  '123%'
OR LENGTH( Number ) <50
GROUP BY Numbers
ORDER BY TIME =  '2015-07-22 00:00:01' ASC 
Run Code Online (Sandbox Code Playgroud)

我现在想制作一个简单的php页面,我想在浏览器上显示查询结果,但我无法弄清楚如何完全回应它.所以我做了这个:

$result = $pdo->prepare("SELECT COUNT( * ) , LENGTH( Number ) AS Numbers
                         FROM  `history_2015-07-22` 
                         WHERE Number NOT LIKE  '123%'
                         OR LENGTH( Number ) <50
                         GROUP BY Numbers
                         ORDER BY TIME =  '2015-07-22 00:00:01' ASC ");
$result->execute();
foreach ($result as $Numbers)
{
    echo '<div class="container">
                '.$Numbers['COUNT(*)'].'
                '.$Numbers['LENGTH(Number)'].'
          </div>';
}
Run Code Online (Sandbox Code Playgroud)

我想要回应的是CountLength.我确信这是一件非常简单的事情,但我无法弄明白.

小智 6

首先,您能否解释一下您正在尝试使用SQL查询做什么?

根据我的理解,你可以试试这个:

$result = $pdo->prepare("SELECT COUNT( * ) AS ct_all, LENGTH( `Number` ) AS Numbers
                         FROM  `history_2015-07-22` 
                         WHERE `Number` NOT LIKE ('123%')
                         AND Numbers < 50
                         GROUP BY Numbers
                         ORDER BY `TIME` ASC");
$result->execute();
$results = $result->fetchAll();
foreach ($results as $row) {
    echo '<div class="container">';
    echo $row['ct_all'] . ' // ';
    echo $row['Numbers'];
    echo '</div>';
}
Run Code Online (Sandbox Code Playgroud)