我想计算一个特定字段集的多少字段在mysql中为空,我找到了一些示例,但它们都遍历整个表。
基本上我有8个领域
listing_photo_1到listing_photo_8,我想获取其中已填充的数量。
我试过了:
$result=mysql_query("SELECT count(*) as total from listings
WHERE listing_photo_1 IS NOT NULL AND
listing_photo_2 IS NOT NULL AND
listing_photo_3 IS NOT NULL AND
listing_photo_4 IS NOT NULL AND
listing_photo_5 IS NOT NULL AND
listing_photo_6 IS NOT NULL AND
listing_photo_7 IS NOT NULL AND
listing_photo_8 IS NOT NULL AND
pmpid = '$pmpid'");
$data=mysql_fetch_assoc($result);
echo $data['total'];
结果是: 1
为了澄清我期望的结果:
listing_photo_1:已填满
listing_photo_2:已填满
listing_photo_3:已填满
listing_photo_4:为空
listing_photo_5:为空
listing_photo_6:为空
listing_photo_7:为空
listing_photo_8:为空`
结果应该是 3
您编写代码尝试计算所有字段都不为null的行数。您应该使用is not null
而不是仅仅使用not null
。
要计算字段数,请使用以下命令:
SELECT sum((listing_photo_1 IS NOT NULL) +
(listing_photo_2 IS NOT NULL) +
(listing_photo_3 IS NOT NULL) +
(listing_photo_4 IS NOT NULL) +
(listing_photo_5 IS NOT NULL) +
(listing_photo_6 IS NOT NULL) +
(listing_photo_7 IS NOT NULL) +
(listing_photo_8 IS NOT NULL)
) as total
from listings
WHERE pmpid = '$pmpid';
要计算行数:
SELECT count(*) as total
from listings
WHERE listing_photo_1 IS NOT NULL AND
listing_photo_2 IS NOT NULL AND
listing_photo_3 IS NOT NULL AND
listing_photo_4 IS NOT NULL AND
listing_photo_5 IS NOT NULL AND
listing_photo_6 IS NOT NULL AND
listing_photo_7 IS NOT NULL AND
listing_photo_8 IS NOT NULL AND
pmpid = '$pmpid'";
编辑:
如果它们为空,请使用如下逻辑:
SELECT sum((listing_photo_1 IS NOT NULL and listing_photo_1 <> '') +
(listing_photo_2 IS NOT NULL and listing_photo_2 <> '') +
(listing_photo_3 IS NOT NULL and listing_photo_3 <> '') +
(listing_photo_4 IS NOT NULL and listing_photo_4 <> '') +
(listing_photo_5 IS NOT NULL and listing_photo_5 <> '') +
(listing_photo_6 IS NOT NULL and listing_photo_6 <> '') +
(listing_photo_7 IS NOT NULL and listing_photo_7 <> '') +
(listing_photo_8 IS NOT NULL and listing_photo_8 <> '')
) as total
from listings
WHERE pmpid = '$pmpid';
问题内容: 我有一个包含用户数据的类,如下所示: 我需要计算非字段,以显示用户已填充的配置文件的百分比。还有一些,我不希望在百分比计算要考虑几个字段:,和。 一种简单的方法是使用多个语句来获取非null字段,但这将涉及大量样板代码,并且还有一个我需要显示完成百分比的类。因此,我创建了一个实用程序函数,如下所示: 然后我按如下所示调用此函数: 我的问题是,这是我不算数字段还是可以进一步改进的最佳方法
本文向大家介绍MySQL查询空字段或非空字段(is null和not null),包括了MySQL查询空字段或非空字段(is null和not null)的使用技巧和注意事项,需要的朋友参考一下 现在我们先来把test表中的一条记录的birth字段设置为空。 mysql> update test set t_birth=null where t_id=1; Query OK, 1 row affe
我使用了Gson,但我需要转换器只序列化非空值或非空值。 例如: 现在,将该对象转换为json的Gson实例如下所示
我尝试使用Java8特性。 我有课 我的最后一个映射类是 因为我是刚到java的,我面临着要完成它的斗争,我尽了最大的努力。是否可以删除空文件和计数?提前致谢
我尝试使用Java8特性。 我有课 我有一个列表,我尝试按分组,并计算非空的和。示例: 我的预期输出是 我试着跟在后面 因为我是刚到java的,我面临着要完成它的斗争,我尽了最大的努力。是否可以删除空文件和计数?
但我们只对其中一些答案感兴趣。 注意:以上只是展示结构的示例。每个映射都有几十个元素。 我们真正需要的是:https://github.com/pact-foundation/pact-specification/issues/38,但它是计划在V.4中使用的。与此同时,我们正在尝试一种不同的方法。我现在尝试做的是指定列表的每个元素都是一个非空映射。另一种方法是指定列表的每个元素都不为空。这些都可