我需要在任何 db 中提取“特定行的非空列数的计数”。
任何事物 ?...
谢谢,干杯!
您应该查看此选项以获取所有不为空的字段名称:
show columns from TABLE_NAME where Null = 'NO';
从 PHP 运行此查询并尝试通过 mysql_num_rows 获取此查询的计数。
尝试这个
select
if(name1 = 0, 0, 1) +
if(name2 = 0, 0, 1) +
if(name3 = 0, 0, 1) as NumMsg
from attributes where `id`='5'
尝试一些类似的东西
SELECT
(
(CASE WHEN col1 IS NOT NULL THEN 1 ELSE 0 END)
+ (CASE WHEN col2 IS NOT NULL THEN 1 ELSE 0 END)
...) AS count_of_not_nulls
FROM table t
WHERE t.Id= @ROW_ID