我的数据在表中是这样的。
name day1 day2 day3
Anand P NA NA
Anand NA P NA
Anand NA NA P
I want result like this
name day1 day2 day3
Anand P P P
Group by 子句仅给出第一行数据。 请建议我mysql查询。您可以假设表名称为 att_table。
最佳答案
您可以使用NULLIF
将NA
值替换为NULL
,然后使用MAX()
获取每个组内的非空值。
SELECT name, MAX(NULLIF(day1, 'NA')) AS day1, MAX(NULLIF(day2, 'NA')) AS day2, MAX(NULLIF(day3, 'NA')) AS day2
FROM att_table
GROUP BY name
关于mysql - 如何使用mysql查询删除重复数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36473650/