php - 计算特定mysql列不为空的行数

标签 php mysql count rows

我有一个 mysql 表,其中有 x 个列。我想检查特定列的行是否为空..

目前我有:

$query10 ("SELECT count(*) FROM content WHERE linkname IS NOT NULL")     or die(mysql_error());
$result10 = mysql_query($query10);
$row10 = mysql_fetch_assoc($query10);
echo $row10['0']; 

但是我收到一个错误:

fatal error :函数名称必须是第 227 行 ... 中的字符串

在使用 num_rows 之前,我从未使用过 count ..但似乎也无法让它与它一起使用 ..

所以为了清楚起见,我的 table 看起来像

|  column1  |   column2   |   column3  |
--------------------------------------------
|     a     |      b       |              |
---------------------------------------------
|     a2    |      b2      |      c2      |
----------------------------------------------
|     a3    |      b3      |              |

我想统计column3中非空的所有行,所以在这种情况下count的结果应该是1。

计数出现以下错误:

mysql_fetch_assoc() 期望参数 1 为资源,给定字符串

非常感谢

最佳答案

您需要使用<> '' IS NOT NULL状态

SELECT count(*) FROM content WHERE linkname <> ''

SQL Fiddle Demo

正如Murtaza Bhurgri所说的$query10 ("SELECT count(*) FROM content WHERE linkname IS NOT NULL") or die(mysql_error());这肯定会出错。应该是这样的

$query10 = "SELECT count(*) FROM content WHERE linkname <> ''";
$result10 = mysql_query( $query10 );
if ( !$result10 ) {
    die( 'Invalid query: ' . mysql_error() );
}
$row10 = mysql_fetch_assoc($result10);
echo $row10[0]; 

关于php - 计算特定mysql列不为空的行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41649000/

相关文章:

MySQL COUNT() GROUP BY - 如何将未分组的列转换为数组或确定优先级?

java - Hibernate JPQL 返回 count(*) 查询的多个结果

php - @row :=@row+1 的 php 等价物是什么

PHP MySQL 多用户登录单个用户 ID 例如具有五个用户名的公司帐户都访问相同的数据

php - 如何执行具有多个 WHERE 子句的 MySQL 查询?

php - 删除之前表中的数据

R - 计算所有组合

php - 语言选择列表

php - 什么是存储库、服务和操作/ Controller ?

mysql - 如何在一个表中选择多行,而在另一个表中只选择一行?